{
  "openapi": "3.0.1",
  "info": {
    "title": "MyPreferences API",
    "version": "4.0.1.4"
  },
  "servers": [
    {
      "url": "/profiles/v4"
    }
  ],
  "paths": {
    "/{clientId}/Tags/{TagName}": {
      "delete": {
        "tags": [
          "Config"
        ],
        "summary": "Delete a Tag",
        "operationId": "DeleteTags",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences Account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "tagName",
            "in": "path",
            "description": "Name of the tag to delete",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "No Content"
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/{clientId}/AddressTypes": {
      "get": {
        "tags": [
          "Config"
        ],
        "summary": "This method allows you to retrieve a collection of previously defined AddressTypes.\r\nAddressTypes are used for classifying mailing addresses on a user’s profile such as Home, Business or Shipping.\r\nEach mailing address on a user’s profile must be associated with an AddressType.\r\n\r\nThe \"Name\" and \"Description\" fields on AddressTypes support localization which helps you drive multilingual experiences across customer touchpoints.",
        "operationId": "GetAddressTypes",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences Account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "Id",
            "in": "query",
            "description": "Optional Type Id.  If specified, only the Type with this Id will be returned.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 0
            }
          },
          {
            "name": "locale",
            "in": "query",
            "description": "A valid locale associated with the AddressType. Ex: “en”, “en-us”, “en-uk”, “fr-ca”.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.AddressTypeEntryList"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.AddressTypeEntryList"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.AddressTypeEntryList"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      },
      "post": {
        "tags": [
          "Config"
        ],
        "summary": "This method will add a new AddressType to the client configuration which can be associated with a postal address for storing preferences.",
        "operationId": "PostAddressTypes",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences Account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "description": "Collection of AddressTypeEntrys to submit",
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/Profiles.REST.Core.Models.AddressTypeEntryList"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Profiles.REST.Core.Models.AddressTypeEntryList"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/Profiles.REST.Core.Models.AddressTypeEntryList"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/Profiles.REST.Core.Models.AddressTypeEntryList"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Created",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.AddressTypeEntryList"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.AddressTypeEntryList"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.AddressTypeEntryList"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/{clientId}/AlternateIdTypes": {
      "get": {
        "tags": [
          "Config"
        ],
        "summary": "This method allows you to retrieve a collection of previously defined AlternateIdTypes.\r\nAlternateIdTypes are used to associate external or identity specific Id values to a profile used for classifying mailing addresses on a user’s profile such as Home, Business or Shipping.\r\nEach mailing address on a user’s profile must be associated with an AddressType. \r\n\r\nThe \"Name\" and \"Description\" fields on AlternateIdType support localization which helps you drive multilingual experiences across customer touchpoints.",
        "operationId": "GetAlternateIdTypes",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences Account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "Id",
            "in": "query",
            "description": "Optional Type Id.  If specified, only the Type with this Id will be returned.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 0
            }
          },
          {
            "name": "locale",
            "in": "query",
            "description": "A valid locale associated with the AlternateIdType. Ex: “en”, “en-us”, “en-uk”, “fr-ca”.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.AlternateIdTypeEntryList"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.AlternateIdTypeEntryList"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.AlternateIdTypeEntryList"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      },
      "post": {
        "tags": [
          "Config"
        ],
        "summary": "This method will add new Alternate Identity Types which can be used to retrieve a profile.\r\nAlternate Identity values must be unique by type across all profiles for a client.",
        "operationId": "PostAlternateIdTypes",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences Account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "description": "Collection of AlternateIdTypeEntrys to submit",
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/Profiles.REST.Core.Models.AlternateIdTypeEntryList"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Profiles.REST.Core.Models.AlternateIdTypeEntryList"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/Profiles.REST.Core.Models.AlternateIdTypeEntryList"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/Profiles.REST.Core.Models.AlternateIdTypeEntryList"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Created",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.AlternateIdTypeEntryList"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.AlternateIdTypeEntryList"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.AlternateIdTypeEntryList"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/{clientId}/ConsentStatus": {
      "get": {
        "tags": [
          "Config"
        ],
        "summary": "This method will retrieve Consent Statuses supported by MyPreferences",
        "operationId": "GetConsentStatus",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences Account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.ConsentStatusList"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.ConsentStatusList"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.ConsentStatusList"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/{clientId}/ConsentTypes": {
      "get": {
        "tags": [
          "Config"
        ],
        "summary": "This method will retrieve all Consent Types defined in your MyPreferences account. \r\nOptionally you can include a locale to filter the results by a specific locale.",
        "operationId": "GetConsentTypes",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences Account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "Id",
            "in": "query",
            "description": "Optional Type Id.  If specified, only the Type with this Id will be returned.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 0
            }
          },
          {
            "name": "locale",
            "in": "query",
            "description": "A valid locale associated with the ConsentType. Ex: “en”, “en-us”, “en-uk”, “fr-ca”.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "latestVersionOnly",
            "in": "query",
            "description": "Option to limit the number of returned consent versions.  True will return only the\r\n            most recent version.  False will return all versions of a consent.",
            "schema": {
              "type": "boolean",
              "default": false
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.ConsentTypeEntryList"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.ConsentTypeEntryList"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.ConsentTypeEntryList"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      },
      "post": {
        "tags": [
          "Config"
        ],
        "summary": "This method will add new Consent Types which can be used on profiles.",
        "operationId": "PostConsentTypes",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences Account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "description": "Collection of ConsentTypeEntrys to submit",
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/Profiles.REST.Core.Models.PostConsentTypeEntryList"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Profiles.REST.Core.Models.PostConsentTypeEntryList"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/Profiles.REST.Core.Models.PostConsentTypeEntryList"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/Profiles.REST.Core.Models.PostConsentTypeEntryList"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Created",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.ConsentTypeEntryList"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.ConsentTypeEntryList"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.ConsentTypeEntryList"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/{clientId}/CustomerTypes": {
      "get": {
        "tags": [
          "Config"
        ],
        "summary": "This method will retrieve all Customer Types defined by the client.\r\nOptionally you can include a locale to filter the results by a specific locale.",
        "operationId": "GetCustomerTypes",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences Account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "Id",
            "in": "query",
            "description": "Optional Type Id.  If specified, only the Type with this Id will be returned.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 0
            }
          },
          {
            "name": "locale",
            "in": "query",
            "description": "A valid locale associated with the CustomerType. Ex: “en”, “en-us”, “en-uk”, “fr-ca”.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.CustomerTypeEntryList"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.CustomerTypeEntryList"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.CustomerTypeEntryList"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      },
      "post": {
        "tags": [
          "Config"
        ],
        "summary": "This method will add new Customer Types which can be used for a profile.\r\nA profile will always only contain a single CustomerType.",
        "operationId": "PostCustomerTypes",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences Account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "description": "Collection of CustomerTypeEntrys to submit",
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/Profiles.REST.Core.Models.CustomerTypeEntryList"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Profiles.REST.Core.Models.CustomerTypeEntryList"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/Profiles.REST.Core.Models.CustomerTypeEntryList"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/Profiles.REST.Core.Models.CustomerTypeEntryList"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Created",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.CustomerTypeEntryList"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.CustomerTypeEntryList"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.CustomerTypeEntryList"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/{clientId}/CustomFields": {
      "get": {
        "tags": [
          "Config"
        ],
        "summary": "This method will retrieve all Custom Fields defined by the client, unless you specify a CustomField Id, which will return only that Custom Field. \r\nOptionally you can include a locale to filter the results by a specific locale.",
        "operationId": "GetCustomFields",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences Account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "Id",
            "in": "query",
            "description": "Optional custom field Id. If specified, only the custom field with this Id will be returned.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 0
            }
          },
          {
            "name": "locale",
            "in": "query",
            "description": "Optional locale.  If specified, only custom fields associated with the locale are returned.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.CustomFields"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.CustomFields"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.CustomFields"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/{clientId}/CustomFields/DateTime": {
      "get": {
        "tags": [
          "Config"
        ],
        "summary": "This method will retrieve all Custom DateTime Fields defined by the client, unless you specify a DateTime Id, which will return only that Custom Field.\r\nOptionally you can include a locale to filter the results by a specific locale.",
        "operationId": "GetCustomFieldsDateTime",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences Account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "Id",
            "in": "query",
            "description": "Optional custom DateTime field Id. If specified, only the custom DateTime field with this Id will be returned.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 0
            }
          },
          {
            "name": "locale",
            "in": "query",
            "description": "Optional locale.  If specified, only custom DateTime fields associated with the locale are returned.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.CustomFieldDateTimeList"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.CustomFieldDateTimeList"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.CustomFieldDateTimeList"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      },
      "post": {
        "tags": [
          "Config"
        ],
        "summary": "This method will create new custom fields which will allow you to capture Date and/or Time values on a profile.",
        "operationId": "PostCustomFieldsDateTime",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences Account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "description": "Collection of custom DateTime fields to submit",
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/Profiles.REST.Core.Models.CustomFieldDateTimeList"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Profiles.REST.Core.Models.CustomFieldDateTimeList"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/Profiles.REST.Core.Models.CustomFieldDateTimeList"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/Profiles.REST.Core.Models.CustomFieldDateTimeList"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Created",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.CustomFieldDateTimeList"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.CustomFieldDateTimeList"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.CustomFieldDateTimeList"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/{clientId}/CustomFields/Numeric": {
      "get": {
        "tags": [
          "Config"
        ],
        "summary": "This method will retrieve all Custom Numeric Fields defined by the client, unless you specify a Numeric Id, which will return only that Custom Field. \r\nOptionally you can include a locale to filter the results by a specific locale.",
        "operationId": "GetCustomFieldsNumeric",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences Account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "Id",
            "in": "query",
            "description": "Optional custom Numeric field Id. If specified, only the custom Numeric field with this Id will be returned.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 0
            }
          },
          {
            "name": "locale",
            "in": "query",
            "description": "Optional locale.  If specified, only custom numeric fields associated with the locale are returned.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.CustomFieldNumericList"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.CustomFieldNumericList"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.CustomFieldNumericList"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      },
      "post": {
        "tags": [
          "Config"
        ],
        "summary": "This method will create new custom fields which will allow you to capture Numeric values on a profile.",
        "operationId": "PostCustomFieldsNumeric",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences Account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "description": "Collection of custom numeric fields to submit",
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/Profiles.REST.Core.Models.CustomFieldNumericList"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Profiles.REST.Core.Models.CustomFieldNumericList"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/Profiles.REST.Core.Models.CustomFieldNumericList"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/Profiles.REST.Core.Models.CustomFieldNumericList"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Created",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.CustomFieldNumericList"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.CustomFieldNumericList"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.CustomFieldNumericList"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/{clientId}/CustomFields/SelectList": {
      "get": {
        "tags": [
          "Config"
        ],
        "summary": "This method will retrieve all Custom Select List Fields defined by the client, unless you specify a SelectList Id, which will return only that Custom Field.\r\nOptionally you can include a locale to filter the results by a specific locale.",
        "operationId": "GetCustomFieldsSelectList",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences Account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "Id",
            "in": "query",
            "description": "Optional custom SelectList field Id. If specified, only the custom SelectList field with this Id will be returned.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 0
            }
          },
          {
            "name": "locale",
            "in": "query",
            "description": "Optional locale.  If specified, only custom select list fields associated with the locale are returned.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.CustomFieldSelectListList"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.CustomFieldSelectListList"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.CustomFieldSelectListList"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      },
      "post": {
        "tags": [
          "Config"
        ],
        "summary": "This method will create new custom fields which will allow you to capture Select List values on a profile.",
        "operationId": "PostCustomFieldsSelectList",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences Account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "description": "Collection of custom select list fields to submit",
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/Profiles.REST.Core.Models.CustomFieldSelectListList"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Profiles.REST.Core.Models.CustomFieldSelectListList"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/Profiles.REST.Core.Models.CustomFieldSelectListList"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/Profiles.REST.Core.Models.CustomFieldSelectListList"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Created",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.CustomFieldSelectList"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.CustomFieldSelectList"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.CustomFieldSelectList"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/{clientId}/CustomFields/Text": {
      "get": {
        "tags": [
          "Config"
        ],
        "summary": "This method will retrieve all Custom Text Fields defined by the client, unless you specify a Text Id, which will return only that Custom Field. Optionally you can include a locale to filter the results by a specific locale.",
        "operationId": "GetCustomFieldsText",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences Account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "Id",
            "in": "query",
            "description": "Optional custom Text field Id. If specified, only the custom text field with this Id will be returned.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 0
            }
          },
          {
            "name": "locale",
            "in": "query",
            "description": "Optional locale.  If specified, only custom text fields associated with the locale are returned.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.CustomFieldTextList"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.CustomFieldTextList"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.CustomFieldTextList"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      },
      "post": {
        "tags": [
          "Config"
        ],
        "summary": "This method will create new custom fields which will allow you to capture Text values on a profile.",
        "operationId": "PostCustomFieldsText",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences Account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "description": "Collection of custom text fields to submit",
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/Profiles.REST.Core.Models.CustomFieldTextList"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Profiles.REST.Core.Models.CustomFieldTextList"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/Profiles.REST.Core.Models.CustomFieldTextList"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/Profiles.REST.Core.Models.CustomFieldTextList"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Created",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.CustomFieldTextList"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.CustomFieldTextList"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.CustomFieldTextList"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/{clientId}/EmailTypes": {
      "get": {
        "tags": [
          "Config"
        ],
        "summary": "This method will retrieve all Email Types defined by the client. Optionally you can include a locale to filter the results by a specific locale.",
        "operationId": "GetEmailTypes",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences Account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "Id",
            "in": "query",
            "description": "Optional Type Id.  If specified, only the Type with this Id will be returned.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 0
            }
          },
          {
            "name": "locale",
            "in": "query",
            "description": "A valid locale associated with the EmailType. Ex: “en”, “en-us”, “en-uk”, “fr-ca”.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.EmailTypeEntryList"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.EmailTypeEntryList"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.EmailTypeEntryList"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      },
      "post": {
        "tags": [
          "Config"
        ],
        "summary": "This method will add a new Email Type to the client configuration which can be associated with an email address for storing preferences.",
        "operationId": "PostEmailTypes",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences Account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "description": "Collection of EmailTypeEntrys to submit",
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/Profiles.REST.Core.Models.EmailTypeEntryList"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Profiles.REST.Core.Models.EmailTypeEntryList"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/Profiles.REST.Core.Models.EmailTypeEntryList"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/Profiles.REST.Core.Models.EmailTypeEntryList"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Created",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.EmailTypeEntryList"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.EmailTypeEntryList"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.EmailTypeEntryList"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/{clientId}/GroupNames": {
      "get": {
        "tags": [
          "Config"
        ],
        "summary": "This method will retrieve all Group Names.",
        "operationId": "GetGroupNames",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "Your required clientId used to access the WebAPI. A 404 is returned if this value is invalid.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "Id",
            "in": "query",
            "description": "Optional Type Id.  If specified, only the Type with this Id will be returned.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 0
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.GroupTypeNameEntryList"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.GroupTypeNameEntryList"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.GroupTypeNameEntryList"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/{clientId}/GroupTypes": {
      "get": {
        "tags": [
          "Config"
        ],
        "summary": "This method will retrieve all Group Types defined by the client. Optionally you can include a locale to filter the results by a specific locale.",
        "operationId": "GetGroupTypes",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences Account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "Id",
            "in": "query",
            "description": "Optional Type Id.  If specified, only the Type with this Id will be returned.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 0
            }
          },
          {
            "name": "locale",
            "in": "query",
            "description": "A valid locale associated with the GroupType. Ex: “en”, “en-us”, “en-uk”, “fr-ca”.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.GroupTypeEntryList"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.GroupTypeEntryList"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.GroupTypeEntryList"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      },
      "post": {
        "tags": [
          "Config"
        ],
        "summary": "This method will add a new Group Type to the client configuration which can be associated with a Group for storing preferences.",
        "operationId": "PostGroupTypes",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences Account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "description": "Collection of GroupTypeEntrys to submit",
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/Profiles.REST.Core.Models.GroupTypeEntryList"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Profiles.REST.Core.Models.GroupTypeEntryList"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/Profiles.REST.Core.Models.GroupTypeEntryList"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/Profiles.REST.Core.Models.GroupTypeEntryList"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Created",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.GroupTypeEntryList"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.GroupTypeEntryList"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.GroupTypeEntryList"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/{clientId}/PhoneTypes": {
      "get": {
        "tags": [
          "Config"
        ],
        "summary": "This method will retrieve all Phone Types defined by the client.\r\nOptionally you can include a locale to filter the results by a specific locale.",
        "operationId": "GetPhoneTypes",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences Account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "Id",
            "in": "query",
            "description": "Optional Type Id.  If specified, only the Type with this Id will be returned.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 0
            }
          },
          {
            "name": "locale",
            "in": "query",
            "description": "A valid locale associated with the PhoneType. Ex: “en”, “en-us”, “en-uk”, “fr-ca”.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.PhoneNumberTypeEntryList"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.PhoneNumberTypeEntryList"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.PhoneNumberTypeEntryList"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      },
      "post": {
        "tags": [
          "Config"
        ],
        "summary": "This method will add a new Phone Type to the client configuration.",
        "operationId": "PostPhoneTypes",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences Account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "description": "Collection of PhoneNumberTypeEntrys to submit",
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/Profiles.REST.Core.Models.PhoneNumberTypeEntryList"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Profiles.REST.Core.Models.PhoneNumberTypeEntryList"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/Profiles.REST.Core.Models.PhoneNumberTypeEntryList"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/Profiles.REST.Core.Models.PhoneNumberTypeEntryList"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Created",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.PhoneNumberTypeEntryList"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.PhoneNumberTypeEntryList"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.PhoneNumberTypeEntryList"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/{clientId}/Picklists": {
      "get": {
        "tags": [
          "Config"
        ],
        "summary": "This method will retrieve all Picklists defined by the client, unless you specify a Picklist Id, which will return only that Picklist.\r\nOptionally you can include a locale to filter the results by a specific locale.",
        "operationId": "GetPicklists",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences Account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "Id",
            "in": "query",
            "description": "Custom PicklistId. If specified, only the picklist with this Id will be returned.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 0
            }
          },
          {
            "name": "locale",
            "in": "query",
            "description": "A valid locale associated with the picklist type. Ex: “en”, “en-us”, “en-uk”, “fr-ca”.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.PicklistList"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.PicklistList"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.PicklistList"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      },
      "post": {
        "tags": [
          "Config"
        ],
        "summary": "This method will add new Picklists that can be associated with SelectList custom fields.",
        "operationId": "PostPicklists",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences Account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "description": "Collection of pickLists to submit",
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/Profiles.REST.Core.Models.PicklistList"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Profiles.REST.Core.Models.PicklistList"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/Profiles.REST.Core.Models.PicklistList"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/Profiles.REST.Core.Models.PicklistList"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Created",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.PicklistList"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.PicklistList"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.PicklistList"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/{clientId}/Tags": {
      "get": {
        "tags": [
          "Config"
        ],
        "summary": "This method will retrieve all Tags defined by the client.",
        "operationId": "GetTags",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences Account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.TagCountList"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.TagCountList"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.TagCountList"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/{clientId}/UpdateRules": {
      "get": {
        "tags": [
          "Config"
        ],
        "summary": "This method will retrieve all Update Rules defined by the client.",
        "operationId": "GetUpdateRules",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences Account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.UpdateRuleList"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.UpdateRuleList"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.UpdateRuleList"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/{clientId}/AddressType/{TypeId}": {
      "patch": {
        "tags": [
          "Config"
        ],
        "summary": "This method allows you to update a single Address Type specified by the TypeId parameter.",
        "operationId": "PatchAddressType",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences Account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "typeId",
            "in": "path",
            "description": "Id of the AlternatIdType to update",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "requestBody": {
          "description": "A collection of PATCH operations that you want to perform on the User Profile object.",
          "content": {
            "application/json-patch+json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.JsonPatch.Operations.Operation"
                }
              }
            },
            "application/json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.JsonPatch.Operations.Operation"
                }
              }
            },
            "text/json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.JsonPatch.Operations.Operation"
                }
              }
            },
            "application/*+json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.JsonPatch.Operations.Operation"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.AddressTypeEntry"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.AddressTypeEntry"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.AddressTypeEntry"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/{clientId}/AlternateIdType/{TypeId}": {
      "patch": {
        "tags": [
          "Config"
        ],
        "summary": "This method allows you to update a single AlternateIdType specified by the TypeId parameter.",
        "operationId": "PatchAlternateIdType",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences Account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "typeId",
            "in": "path",
            "description": "Id of the AlternatIdType to update",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "requestBody": {
          "description": "A collection of PATCH operations that you want to perform on the User Profile object.",
          "content": {
            "application/json-patch+json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.JsonPatch.Operations.Operation"
                }
              }
            },
            "application/json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.JsonPatch.Operations.Operation"
                }
              }
            },
            "text/json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.JsonPatch.Operations.Operation"
                }
              }
            },
            "application/*+json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.JsonPatch.Operations.Operation"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.AlternateIdTypeEntry"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.AlternateIdTypeEntry"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.AlternateIdTypeEntry"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/{clientId}/ConsentType/{TypeId}": {
      "patch": {
        "tags": [
          "Config"
        ],
        "summary": "This method allows you to update a single ConsentType specified by the TypeId.",
        "operationId": "PatchConsentType",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences Account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "typeId",
            "in": "path",
            "description": "Id of the ConsentType to update",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "requestBody": {
          "description": "PATCH document describing the patch operation",
          "content": {
            "application/json-patch+json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.JsonPatch.Operations.Operation"
                }
              }
            },
            "application/json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.JsonPatch.Operations.Operation"
                }
              }
            },
            "text/json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.JsonPatch.Operations.Operation"
                }
              }
            },
            "application/*+json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.JsonPatch.Operations.Operation"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.ConsentTypeEntry"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.ConsentTypeEntry"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.ConsentTypeEntry"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/{clientId}/CustomerType/{TypeId}": {
      "patch": {
        "tags": [
          "Config"
        ],
        "summary": "This method allows you to update a single CustomerType specified by the TypeId parameter.",
        "operationId": "PatchCustomerType",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences Account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "typeId",
            "in": "path",
            "description": "Id of the CustomerType to update",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "requestBody": {
          "description": "PATCH document describing the patch operation",
          "content": {
            "application/json-patch+json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.JsonPatch.Operations.Operation"
                }
              }
            },
            "application/json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.JsonPatch.Operations.Operation"
                }
              }
            },
            "text/json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.JsonPatch.Operations.Operation"
                }
              }
            },
            "application/*+json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.JsonPatch.Operations.Operation"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.CustomerTypeEntry"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.CustomerTypeEntry"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.CustomerTypeEntry"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/{clientId}/CustomField/DateTime/{Id}": {
      "patch": {
        "tags": [
          "Config"
        ],
        "summary": "This method allows you to update a single DateTime Custom Field specified by the Id parameter.",
        "operationId": "PatchCustomFieldDateTime",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences Account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "Id",
            "in": "path",
            "description": "Id of the Custom field to update",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "requestBody": {
          "description": "PATCH document describing the patch operation",
          "content": {
            "application/json-patch+json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.JsonPatch.Operations.Operation"
                }
              }
            },
            "application/json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.JsonPatch.Operations.Operation"
                }
              }
            },
            "text/json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.JsonPatch.Operations.Operation"
                }
              }
            },
            "application/*+json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.JsonPatch.Operations.Operation"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.CustomFieldDateTime"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.CustomFieldDateTime"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.CustomFieldDateTime"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/{clientId}/CustomField/Numeric/{Id}": {
      "patch": {
        "tags": [
          "Config"
        ],
        "summary": "This method allows you to update a single Numeric Custom Field specified by the Id parameter.",
        "operationId": "PatchCustomFieldNumeric",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences Account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "Id",
            "in": "path",
            "description": "Id of the Custom field to update",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "requestBody": {
          "description": "PATCH document describing the patch operation",
          "content": {
            "application/json-patch+json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.JsonPatch.Operations.Operation"
                }
              }
            },
            "application/json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.JsonPatch.Operations.Operation"
                }
              }
            },
            "text/json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.JsonPatch.Operations.Operation"
                }
              }
            },
            "application/*+json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.JsonPatch.Operations.Operation"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.CustomFieldNumeric"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.CustomFieldNumeric"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.CustomFieldNumeric"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/{clientId}/CustomField/SelectList/{Id}": {
      "patch": {
        "tags": [
          "Config"
        ],
        "summary": "This method allows you to update a single SelectList Custom Field specified by the Id parameter.",
        "operationId": "PatchCustomFieldSelectList",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences Account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "Id",
            "in": "path",
            "description": "Id of the Custom field to update",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "requestBody": {
          "description": "PATCH document describing the patch operation",
          "content": {
            "application/json-patch+json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.JsonPatch.Operations.Operation"
                }
              }
            },
            "application/json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.JsonPatch.Operations.Operation"
                }
              }
            },
            "text/json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.JsonPatch.Operations.Operation"
                }
              }
            },
            "application/*+json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.JsonPatch.Operations.Operation"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.CustomFieldSelectList"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.CustomFieldSelectList"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.CustomFieldSelectList"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/{clientId}/CustomField/Text/{Id}": {
      "patch": {
        "tags": [
          "Config"
        ],
        "summary": "This method allows you to update a single Text Custom Field specified by the Id parameter.",
        "operationId": "PatchCustomFieldText",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences Account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "Id",
            "in": "path",
            "description": "Id of the Custom field to update",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "requestBody": {
          "description": "PATCH document describing the patch operation",
          "content": {
            "application/json-patch+json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.JsonPatch.Operations.Operation"
                }
              }
            },
            "application/json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.JsonPatch.Operations.Operation"
                }
              }
            },
            "text/json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.JsonPatch.Operations.Operation"
                }
              }
            },
            "application/*+json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.JsonPatch.Operations.Operation"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.CustomFieldText"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.CustomFieldText"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.CustomFieldText"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/{clientId}/EmailType/{TypeId}": {
      "patch": {
        "tags": [
          "Config"
        ],
        "summary": "This method allows you to update a single EmailType specified by the TypeId parameter.",
        "operationId": "PatchEmailType",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences Account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "typeId",
            "in": "path",
            "description": "Id of the EmailType to update",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "requestBody": {
          "description": "PATCH document describing the patch operation",
          "content": {
            "application/json-patch+json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.JsonPatch.Operations.Operation"
                }
              }
            },
            "application/json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.JsonPatch.Operations.Operation"
                }
              }
            },
            "text/json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.JsonPatch.Operations.Operation"
                }
              }
            },
            "application/*+json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.JsonPatch.Operations.Operation"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.EmailTypeEntry"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.EmailTypeEntry"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.EmailTypeEntry"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/{clientId}/GroupType/{TypeId}": {
      "patch": {
        "tags": [
          "Config"
        ],
        "summary": "This method allows you to update a single GroupType specified by the TypeId parameter.",
        "operationId": "PatchGroupType",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences Account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "typeId",
            "in": "path",
            "description": "Id of the GroupType to update",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "requestBody": {
          "description": "PATCH document describing the patch operation",
          "content": {
            "application/json-patch+json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.JsonPatch.Operations.Operation"
                }
              }
            },
            "application/json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.JsonPatch.Operations.Operation"
                }
              }
            },
            "text/json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.JsonPatch.Operations.Operation"
                }
              }
            },
            "application/*+json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.JsonPatch.Operations.Operation"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.GroupTypeEntry"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.GroupTypeEntry"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.GroupTypeEntry"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/{clientId}/PhoneType/{TypeId}": {
      "patch": {
        "tags": [
          "Config"
        ],
        "summary": "This method allows you to update a single PhoneType specified by the TypeId parameter.",
        "operationId": "PatchPhoneType",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences Account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "typeId",
            "in": "path",
            "description": "Id of the PhoneType to update",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "requestBody": {
          "description": "PATCH document describing the patch operation",
          "content": {
            "application/json-patch+json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.JsonPatch.Operations.Operation"
                }
              }
            },
            "application/json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.JsonPatch.Operations.Operation"
                }
              }
            },
            "text/json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.JsonPatch.Operations.Operation"
                }
              }
            },
            "application/*+json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.JsonPatch.Operations.Operation"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.PhoneNumberTypeEntry"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.PhoneNumberTypeEntry"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.PhoneNumberTypeEntry"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/{clientId}/Picklist/{Id}": {
      "patch": {
        "tags": [
          "Config"
        ],
        "summary": "This method allows you to update a single Picklist specified by the Id parameter.",
        "operationId": "PatchPicklist",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences Account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "Id",
            "in": "path",
            "description": "Id of the Picklist to update",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "requestBody": {
          "description": "PATCH document describing the patch operation",
          "content": {
            "application/json-patch+json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.JsonPatch.Operations.Operation"
                }
              }
            },
            "application/json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.JsonPatch.Operations.Operation"
                }
              }
            },
            "text/json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.JsonPatch.Operations.Operation"
                }
              }
            },
            "application/*+json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.JsonPatch.Operations.Operation"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.Picklist"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.Picklist"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.Picklist"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/{clientId}/Groups/{groupType}/Update": {
      "post": {
        "tags": [
          "Config"
        ],
        "summary": "This method will rename an existing group",
        "operationId": "UpdateGroupName",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences Account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "groupType",
            "in": "path",
            "description": "The type of the group to rename",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "description": "GroupUpdateInfo object",
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/Profiles.REST.Core.Models.GroupUpdateInfo"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Profiles.REST.Core.Models.GroupUpdateInfo"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/Profiles.REST.Core.Models.GroupUpdateInfo"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/Profiles.REST.Core.Models.GroupUpdateInfo"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success"
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/{clientId}/Events": {
      "get": {
        "tags": [
          "Events"
        ],
        "summary": "This method will return events.",
        "operationId": "GetEvents",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "eventType",
            "in": "query",
            "description": "Optional parameter used to limit the events returned to a single type.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "startAt",
            "in": "query",
            "description": "Optional datetime.  Events created before this datetime will not be returned.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "endAt",
            "in": "query",
            "description": "Optional datetime.  Events created after this datetime will not be returned.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "sourceGroupIds",
            "in": "query",
            "description": "Optional parameter to filter the returned events down to specific source groups.",
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "locale",
            "in": "query",
            "description": "Optional parameter used for returning the event name and description in the specified locale.  If not supplied, the client's default locale will be used.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "subscribedOnly",
            "in": "query",
            "description": "Optional parameter that when set to true only returns events that are associated with an active subscription.  Defaults to true.",
            "schema": {
              "type": "boolean",
              "default": true
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.EventResult"
                  }
                }
              },
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.EventResult"
                  }
                }
              },
              "text/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.EventResult"
                  }
                }
              }
            }
          },
          "204": {
            "description": "No Content"
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/{clientId}/Events/Profile/{ProfileId}": {
      "get": {
        "tags": [
          "Events"
        ],
        "summary": "This method will return events related to a specific profile.",
        "operationId": "GetProfileEvents",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "profileId",
            "in": "path",
            "description": "This is the value that uniquely identifies the profile for which the events are being retrieved for.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "eventType",
            "in": "query",
            "description": "Optional parameter used to limit the events returned to a single type.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "startAt",
            "in": "query",
            "description": "Optional datetime.  Events created before this datetime will not be returned.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "endAt",
            "in": "query",
            "description": "Optional datetime.  Events created after this datetime will not be returned.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "sourceGroupIds",
            "in": "query",
            "description": "Optional parameter to filter the returned events down to specific source groups.",
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "locale",
            "in": "query",
            "description": "Optional parameter used for returning the event name and description in the specified locale.  If not supplied, the client's default locale will be used.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "subscribedOnly",
            "in": "query",
            "description": "Optional parameter that when set to true only returns events that are associated with an active subscription.  Defaults to true.",
            "schema": {
              "type": "boolean",
              "default": true
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.EventResult"
                  }
                }
              },
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.EventResult"
                  }
                }
              },
              "text/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.EventResult"
                  }
                }
              }
            }
          },
          "204": {
            "description": "No Content"
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/{clientId}/Events/{eventId}": {
      "get": {
        "tags": [
          "Events"
        ],
        "summary": "This method will return a specific event by EventId.",
        "operationId": "GetProfileEventByEventId",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "eventId",
            "in": "path",
            "description": "This is the value that uniquely identifies the event being retrieved.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "locale",
            "in": "query",
            "description": "Optional parameter used for returning the event name and description in the specified locale.  If not supplied, the client's default locale will be used.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.EventResult"
                  }
                }
              },
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.EventResult"
                  }
                }
              },
              "text/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.EventResult"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/{clientId}/Events/Subscription/{SubscriptionId}": {
      "get": {
        "tags": [
          "Events"
        ],
        "summary": "This method will return events related to a specific subscription.",
        "operationId": "GetProfileEventsBySubscriptionId",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "subscriptionId",
            "in": "path",
            "description": "This is the value that uniquely identifies the subscription for which the events are being retrieved for.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "eventType",
            "in": "query",
            "description": "Optional parameter used to limit the events returned to a single type.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "startAt",
            "in": "query",
            "description": "Optional datetime.  Events created before this datetime will not be returned.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "endAt",
            "in": "query",
            "description": "Optional datetime.  Events created after this datetime will not be returned.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "sourceGroupIds",
            "in": "query",
            "description": "Optional parameter to filter the returned events down to specific source groups.",
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "locale",
            "in": "query",
            "description": "Optional parameter used for returning the event name and description in the specified locale.  If not supplied, the client's default locale will be used.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.EventResult"
                  }
                }
              },
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.EventResult"
                  }
                }
              },
              "text/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.EventResult"
                  }
                }
              }
            }
          },
          "204": {
            "description": "No Content"
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/{clientId}/webhooks/subscriptions": {
      "post": {
        "tags": [
          "EventsManagement"
        ],
        "summary": "Creates a webhook subscription.\r\nSee documentation below for required HTTP request body format.",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "201": {
            "description": "Created",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.EventServices.EventServicesCore.Classes.WebhookSubscription"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.EventServices.EventServicesCore.Classes.WebhookSubscription"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.EventServices.EventServicesCore.Classes.WebhookSubscription"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "500": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      },
      "get": {
        "tags": [
          "EventsManagement"
        ],
        "summary": "Returns either all webhook subscriptions, if subscriptionId is null or omitted, or a single\r\nwebhook subscription if subscriptionId (integer) is specified.",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "subscriptionId",
            "in": "query",
            "description": "(Optional) The integer id of the webhook subscription to return or omitted (or null) to\r\n            return all subscriptions.",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success"
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "500": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/{clientId}/webhooks/subscriptions/{subscriptionId}": {
      "put": {
        "tags": [
          "EventsManagement"
        ],
        "summary": "Updates the webhook subscription with id subscriptionId.\r\nSee documentation below for required HTTP request body format.",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "subscriptionId",
            "in": "path",
            "description": "The integer id of the webhook subscription to update.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success"
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "500": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      },
      "delete": {
        "tags": [
          "EventsManagement"
        ],
        "summary": "Deletes the specified webhook subscription.",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "subscriptionId",
            "in": "path",
            "description": "The (integer) id of the webhook subscription.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "No Content"
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "500": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/{clientId}/webhooks/settings": {
      "put": {
        "tags": [
          "EventsManagement"
        ],
        "summary": "Updates webhook subscription settings.",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.EventServices.EventServicesCore.Classes.WebhookSettings"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.EventServices.EventServicesCore.Classes.WebhookSettings"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.EventServices.EventServicesCore.Classes.WebhookSettings"
                }
              }
            }
          },
          "201": {
            "description": "Created"
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "500": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      },
      "get": {
        "tags": [
          "EventsManagement"
        ],
        "summary": "Retrieves webhook subscription settings for one or all subscriptions.",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success"
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "500": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/{clientId}/webhooks/EventAlertSettingsDistributionListSummary": {
      "get": {
        "tags": [
          "EventsManagement"
        ],
        "summary": "Retrieves webhook distribution list summary data for distribution list (MyPreferences) UI.",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success"
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "500": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/{clientId}/webhooks/EventAlertSettingsDistributionListDetails/{distributionListLink}": {
      "get": {
        "tags": [
          "EventsManagement"
        ],
        "summary": "Retrieves webhook distribution list summary data for distribution list (MyPreferences) UI.",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "distributionListLink",
            "in": "path",
            "description": "This is the unique (link) identifiery for the distribution list",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success"
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "500": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      },
      "post": {
        "tags": [
          "EventsManagement"
        ],
        "summary": "Updates webhook subscription settings.",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "distributionListLink",
            "in": "path",
            "description": "This is the unique (link) identifiery for the distribution list",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Profiles.EventServices.EventServicesCore.Classes.EventAlertSettingsDistributionListDetailsResult"
                  }
                }
              },
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Profiles.EventServices.EventServicesCore.Classes.EventAlertSettingsDistributionListDetailsResult"
                  }
                }
              },
              "text/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Profiles.EventServices.EventServicesCore.Classes.EventAlertSettingsDistributionListDetailsResult"
                  }
                }
              }
            }
          },
          "201": {
            "description": "Created"
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "500": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/{clientId}/webhooks/subscriptionsList": {
      "get": {
        "tags": [
          "EventsManagement"
        ],
        "summary": "Returns list of webhook subscriptions without details",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success"
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "500": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/{clientId}/webhooks/subscriptions/resendfailedevents/{subscriptionId}": {
      "post": {
        "tags": [
          "EventsManagement"
        ],
        "summary": "Resends failed events for subscription with id subscriptionId.\r\nThis HTTP request has no POST body (i.e., the body of the request is empty or ignored)",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "subscriptionId",
            "in": "path",
            "description": "The integer id of the webhook subscription to update.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "alternateIdType",
            "in": "query",
            "description": "The subscription's current alternateIdType or empty string if none specified.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success"
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "500": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/Async/{clientId}/Export/{AccessToken}/Status": {
      "get": {
        "tags": [
          "Export"
        ],
        "summary": "Returns the status of your request.",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "PossibleNow ClientId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "accessToken",
            "in": "path",
            "description": "Access token returned by the Initiate method to retrieve the processing status of the export",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/PossibleNow.Profiles.DataExportCore.Classes.AsyncApiDataExportStatusResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PossibleNow.Profiles.DataExportCore.Classes.AsyncApiDataExportStatusResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/PossibleNow.Profiles.DataExportCore.Classes.AsyncApiDataExportStatusResult"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/Async/{clientId}/Export/Segment/{AccessToken}": {
      "get": {
        "tags": [
          "Export"
        ],
        "summary": "Retrieve the data for a segment export. You may iterate through multiple calls until all records are retrieved. \r\nThe access token will expire automatically upon complete data retrieval. Set the keepAlive parameter to \r\ntrue to retrieve data beyond the initial retrieval. The default value is set to false, if not specified.",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "PossibleNow ClientId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "accessToken",
            "in": "path",
            "description": "Access token returned by the Initiate method to retrieve the processing status of the export",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "limit",
            "in": "query",
            "description": "Specifies the maximum number of records to return",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "offset",
            "in": "query",
            "description": "Specifies 1 based starting point for the batch of records to retrieve",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "keepAlive",
            "in": "query",
            "description": "Optional, defaults to false.  If specified and true, then DO NOT mark the data as retrieved when the last block of data has been retrieved.",
            "schema": {
              "type": "boolean",
              "default": false
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/PossibleNow.Profiles.DataExportCore.Classes.AsyncApiDataExportSegmentResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PossibleNow.Profiles.DataExportCore.Classes.AsyncApiDataExportSegmentResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/PossibleNow.Profiles.DataExportCore.Classes.AsyncApiDataExportSegmentResult"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/Async/{clientId}/Export/SegmentGroup/{AccessToken}": {
      "get": {
        "tags": [
          "Export"
        ],
        "summary": "Retrieve the data for a segment group export. You may iterate through multiple calls until all records are retrieved. \r\nThe access token will expire automatically upon complete data retrieval. Set the keepAlive parameter to \r\ntrue to retrieve data beyond the initial retrieval. The default value is set to false, if not specified.",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "PossibleNow ClientId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "accessToken",
            "in": "path",
            "description": "Access token returned by the Initiate method to retrieve the processing status of the export",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "limit",
            "in": "query",
            "description": "Specifies the maximum number of records to return",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "offset",
            "in": "query",
            "description": "Specifies 1 based starting point for the batch of records to retrieve",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "keepAlive",
            "in": "query",
            "description": "Optional, defaults to false.  If specified and true, then DO NOT mark the data as retrieved when the last block of data has been retrieved.",
            "schema": {
              "type": "boolean",
              "default": false
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/PossibleNow.Profiles.DataExportCore.Classes.AsyncApiDataExportSegmentResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PossibleNow.Profiles.DataExportCore.Classes.AsyncApiDataExportSegmentResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/PossibleNow.Profiles.DataExportCore.Classes.AsyncApiDataExportSegmentResult"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/Async/{clientId}/Export/Segment/{SegmentName}": {
      "post": {
        "tags": [
          "Export"
        ],
        "summary": "Initiate request by specifying a Segment name. You can optionally pass lastdatetime to retrieve preference updates \r\nfor a specific period.",
        "description": "",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "Possiblenow ClientId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "segmentName",
            "in": "path",
            "description": "Name of the MyPreferences segment to export",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "description": "Optional LastDateTime used for the request\r\n<br>\r\nThe LastDateTime is used with greater than logic by the data export engine, meaning that the data returned\r\nwill be only that which has a date that is greater than the LastDateTime which is provided.  This is different\r\nthan the default logic applied by the data export engine, which uses greater than or equal to logic (by default).\r\n<br>\r\nFurthermore, this special \"greater than\" logic is implemented in a particular way to avoid potential\r\nskipped data.  The dates stored in the database are automatically rounded to millisecond values that align to \r\n.000, .003, or .007 (e.g., 000, 020, 950, 003, 123, 767 milliseconds).  The dates returned by this API call, and\r\nsubsequently used to populate the LastDateTime property by the calling client, should therefore (if legitimate)\r\nalso have millisecond values that align with those values (because they originated from a database value);\r\nnevertheless, this API method will handle dates with any millisecond value by always increasing the millisecond\r\nvalue actually used by the data export to the next higher millisecond boundary.  So, for example (000 or 001 or\r\n002 become 003, 003 or 004 or 005 or 006 become 007, and 007 or 008 or 009 become 000 of the next higher value).\r\n",
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/Profiles.REST.Core.Models.SegmentRequestInfo"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Profiles.REST.Core.Models.SegmentRequestInfo"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/Profiles.REST.Core.Models.SegmentRequestInfo"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/Profiles.REST.Core.Models.SegmentRequestInfo"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.AsyncToken"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.AsyncToken"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.AsyncToken"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "429": {
            "description": "Too Many Requests",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/Async/{clientId}/Export/SegmentGroup/{SegmentGroupName}": {
      "post": {
        "tags": [
          "Export"
        ],
        "summary": "Initiate request by specifying a Segment name. You can optionally pass lastdatetime to retrieve preference updates \r\nfor a specific period.",
        "description": "",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "Possiblenow ClientId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "segmentGroupName",
            "in": "path",
            "description": "Name of the MyPreferences segment group to export",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "description": "Optional LastDateTime used for the request\r\n<br>\r\nThe LastDateTime is used with greater than logic by the data export engine, meaning that the data returned\r\nwill be only that which has a date that is greater than the LastDateTime which is provided.  This is different\r\nthan the default logic applied by the data export engine, which uses greater than or equal to logic (by default).\r\n<br>\r\nFurthermore, this special \"greater than\" logic is implemented in a particular way to avoid potential\r\nskipped data.  The dates stored in the database are automatically rounded to millisecond values that align to \r\n.000, .003, or .007 (e.g., 000, 020, 950, 003, 123, 767 milliseconds).  The dates returned by this API call, and\r\nsubsequently used to populate the LastDateTime property by the calling client, should therefore (if legitimate)\r\nalso have millisecond values that align with those values (because they originated from a database value);\r\nnevertheless, this API method will handle dates with any millisecond value by always increasing the millisecond\r\nvalue actually used by the data export to the next higher millisecond boundary.  So, for example (000 or 001 or\r\n002 become 003, 003 or 004 or 005 or 006 become 007, and 007 or 008 or 009 become 000 of the next higher value).\r\n",
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/Profiles.REST.Core.Models.SegmentRequestInfo"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Profiles.REST.Core.Models.SegmentRequestInfo"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/Profiles.REST.Core.Models.SegmentRequestInfo"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/Profiles.REST.Core.Models.SegmentRequestInfo"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.AsyncToken"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.AsyncToken"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.AsyncToken"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "429": {
            "description": "Too Many Requests",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/Async/{clientId}/Export/Segment/Commit/{AccessToken}": {
      "post": {
        "tags": [
          "Export"
        ],
        "summary": "This endpoint should only be accessed if the keepAlive parameter was set to true when retrieving the data. \r\nInvoking this endpoint marks the data retrieval as “complete” and expires the access token of the segment export.",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "PossibleNow ClientId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "accessToken",
            "in": "path",
            "description": "Access token returned by the Initiate method to retrieve the processing status of the export",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "keepFiles",
            "in": "query",
            "description": "If true, then do not delete export files, just mark token as retreived. See coments above, for further information.",
            "schema": {
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/PossibleNow.Profiles.DataExportCore.Classes.AsyncApiDataExportSegmentResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PossibleNow.Profiles.DataExportCore.Classes.AsyncApiDataExportSegmentResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/PossibleNow.Profiles.DataExportCore.Classes.AsyncApiDataExportSegmentResult"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/Async/{clientId}/Export/SegmentGroup/Commit/{AccessToken}": {
      "post": {
        "tags": [
          "Export"
        ],
        "summary": "This endpoint should only be accessed if the keepAlive parameter was set to true when retrieving the data. \r\nInvoking this endpoint marks the data retrieval as “complete” and expires the access token of the segment group export.",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "PossibleNow ClientId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "accessToken",
            "in": "path",
            "description": "Access token returned by the Initiate method to retrieve the processing status of the export",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "keepFiles",
            "in": "query",
            "description": "If true, then do not delete export files, just mark token as retreived. See coments above, for further information.",
            "schema": {
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/PossibleNow.Profiles.DataExportCore.Classes.AsyncApiDataExportSegmentResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PossibleNow.Profiles.DataExportCore.Classes.AsyncApiDataExportSegmentResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/PossibleNow.Profiles.DataExportCore.Classes.AsyncApiDataExportSegmentResult"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/{clientId}/Filters/{filterId}": {
      "get": {
        "tags": [
          "Filter"
        ],
        "summary": "Retrieve a Filter and only return text tags for the specified locale.",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "Your required clientId used to access the WebAPI.  A 404 is returned if this value is invalid.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "filterId",
            "in": "path",
            "description": "A filterId that is associated with your clientId.  A 404 is returned if this value is invalid.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "locale",
            "in": "query",
            "description": "A valid locale associated with the filterId.  A 400 is returned if the locale is invalid.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Codebase.Results.FilterResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Codebase.Results.FilterResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Codebase.Results.FilterResult"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/Async/{clientId}/Import/{accessToken}/Exceptions": {
      "get": {
        "tags": [
          "Import"
        ],
        "summary": "During the staging step of an import, exceptions can be encountered with the data that is being staged for import.  \r\nWhen exceptions are reported, use this method to retrieve the records that encountered exceptions during the staging process so \r\nthey can be fixed and re-staged.  The access token created during the initiate step will be used in the API route to \r\nidentify the import that exceptions will be retrieved for.  The exceptions retrieved are for ALL staged data for the \r\nimport and not limited to a particular staging step.",
        "operationId": "GetBulkImportExceptions",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "Required value that identifies the client environment updates are being made to",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "accessToken",
            "in": "path",
            "description": "Access token used to authenticate the user.  Retrieved from the previous \"Initiate\" step",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "limit",
            "in": "query",
            "description": "Optional maximum number of records to return.  Specify this value if you want to limit the amount of exception \r\n            records returned in the API response.  This can help with performance and prevent large amounts of exception records being \r\n            returned when it is not necessary",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 1000
            }
          },
          {
            "name": "offset",
            "in": "query",
            "description": "Optional offset of the first record to return. Defaults to 0 if not specified.  Specify this value if you want \r\n            to skip unwanted records in the beginning of the returned data.  This can be helpful if the user knows what record exception they \r\n            specifically want to start at.  Used in conjunction with the limit attribute above the user can narrow down the exceptions they \r\n            want to examine.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 0
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.Import.BulkImportException"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.Import.BulkImportException"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.Import.BulkImportException"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/Async/{clientId}/Import/{accessToken}/Status": {
      "get": {
        "tags": [
          "Import"
        ],
        "summary": "Use this method to retrieve the current status and properties of an initiated import.  The following possible statuses will be \r\nreported on when retrieving the status.  \r\nInitiated - The import has been defined and is ready to accept profile records.  \r\nStaging - The import has profile records that have been included in the import.  More records may be added at this stage.  \r\nQueued - The import has been executed and records have been queued, but the inserted or updated profiles are not available in yet.  \r\nProcessing - The records in the import are being inserted and updated.  \r\nCompleted - All records of the import have been processed and the profile data is available in Profiles.  \r\nFailed - The import has failed to execute and none of the records that were staged have been added into Profiles.",
        "operationId": "GetBulkImportStatus",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "Required value that identifies the client environment updates are being made to",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "accessToken",
            "in": "path",
            "description": "Required access token used to authenticate the user.  Retrieved from the previous \"Initiate\" step.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.Import.BulkImportStatus"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.Import.BulkImportStatus"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.Import.BulkImportStatus"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/Async/{clientId}/Import": {
      "post": {
        "tags": [
          "Import"
        ],
        "summary": "The initiate step begins the process of bulk import.  When an initiate request is completed, Profiles is notified that a bulk of \r\ndata is ready to be queued for import into Profiles.  If successful, an access token will be returned to the user that is \r\nused to stage data and execute the import.  This token is only active for six hours before it expires.  \r\nOnce it has expired it cannot be used again for staging, executing, or retrieving the status or exceptions.",
        "operationId": "InitiateBulkImport",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "Required value that identifies the client environment updates are being made to",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "description": "Details about the import",
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/Profiles.REST.Core.Models.Import.InitiateBulkImport"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Profiles.REST.Core.Models.Import.InitiateBulkImport"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/Profiles.REST.Core.Models.Import.InitiateBulkImport"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/Profiles.REST.Core.Models.Import.InitiateBulkImport"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.Import.InitiateBulkImportResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.Import.InitiateBulkImportResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.Import.InitiateBulkImportResponse"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/Async/{clientId}/Import/{accessToken}/Data": {
      "post": {
        "tags": [
          "Import"
        ],
        "summary": "The staging step is the second step in the import process.  The data that is staged will be inserted into \r\nProfiles as user profiles, preferences, and consents.  The access token created in the initiate step will be used in the \r\nAPI route to identify the import that the staged data will be part of.  All collections of data that are included in the \r\nCreateBulkUserProfilePreference collection are supported data that can be imported.  The response of each stage request will \r\ninclude a report of the records received, records processed, those that validated successfully or unsuccessfully, \r\nand other valuable information regarding the data staged profile records.  The Staging step can be run multiple times before \r\nan import is executed to allow for a large amount of data to be built up over time as long as the access token remains active.  \r\nFor example, a user can initiate an import first thing in the morning and stage data multiple times over the course of several hours.  \r\nWhen the execute request is run, all of the data that was staged will be imported into Profiles.",
        "operationId": "StageBulkImport",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "Required value that identifies the client environment updates are being made to",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "accessToken",
            "in": "path",
            "description": "Required access token used to authenticate the user.  Retrieved from the previous \"Initiate\" step",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "requestBody": {
          "description": "",
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/Profiles.REST.Core.Models.Import.StageBulkImport"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Profiles.REST.Core.Models.Import.StageBulkImport"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/Profiles.REST.Core.Models.Import.StageBulkImport"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/Profiles.REST.Core.Models.Import.StageBulkImport"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.Import.BulkImportStatus"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.Import.BulkImportStatus"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.Import.BulkImportStatus"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "429": {
            "description": "Too Many Requests",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/Async/{clientId}/Import/{accessToken}/Execute": {
      "post": {
        "tags": [
          "Import"
        ],
        "summary": "The execute step is the last step in the import process.  Once all of the Profile data has been staged, the user runs the execute \r\nrequest to run the import and insert the data into Profiles.  The access token created in the initiate step will be used in the \r\nAPI route to identify the import that will be executed using the API request.  Only records that are reported back as \r\n\"Validation Successful\" will be imported into Profiles.  Any records that failed validation or reported exceptions will be ignored.  \r\nA summary of the import details are included in the response once the execution step completes.  When the execution step has \r\ncompleted the import will return with a status of \"Queued\".  Keep checking back using the \"Retrieve Status\" request to confirm when \r\nall of the profile records have been imported into Profiles.",
        "operationId": "ExecuteBulkImport",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "Required value that identifies the client environment updates are being made to",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "accessToken",
            "in": "path",
            "description": "Required access token used to authenticate the user.  Retrieved from the previous \"Initiate\" step",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.Import.BulkImportStatus"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.Import.BulkImportStatus"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.Import.BulkImportStatus"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/{clientId}/Profile/History/Consents/{ProfileId}": {
      "get": {
        "tags": [
          "Preference"
        ],
        "summary": "This method will return the entire consent history that is associated with a single profile id.  Only the basic profile \r\nand consent history will be returned in the response.  Elements like custom fields, groups, tags, and preferences will not be \r\nreturned.  Consent history will be returned in ascending order by Consent Type, Version, and modified date.",
        "operationId": "GetConsentHistory",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "profileId",
            "in": "path",
            "description": "This is the value that uniquely identifies the profile that is being retrieved.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.ConsentHistory"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.ConsentHistory"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.ConsentHistory"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/{clientId}/Profile/History/Consents/AlternateId": {
      "get": {
        "tags": [
          "Preference"
        ],
        "summary": "This method will return the entire consent history that is associated with a single profile using an AlternateID/AlternateIDType \r\ncombination.  Only the basic profile and consent history will be returned in the response.  Elements like custom fields, groups, \r\ntags, and preferences will not be returned.  Consent history will be returned in ascending order by Consent Type, Version, and \r\nmodified date.",
        "operationId": "GetConsentHistoryByAlternateId",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "alternateIdType",
            "in": "query",
            "description": "Value that identifies the type of alternate id that is being accessed.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "alternateId",
            "in": "query",
            "description": "This is the value that uniquely identifies the profile that is being retrieved.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.ConsentHistory"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.ConsentHistory"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.ConsentHistory"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/{clientId}/Profile/History/ContactElements/{ProfileId}": {
      "get": {
        "tags": [
          "Preference"
        ],
        "summary": "This method returns the entire history of contact elements along with any consent associations for a single profile. \r\nProfile-only consents, custom fields, groups, tags, and preferences will not be returned",
        "operationId": "GetContactElementHistory",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "profileId",
            "in": "path",
            "description": "This is the value that uniquely identifies the profile that is being retrieved.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserProfilePreference"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserProfilePreference"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserProfilePreference"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/{clientId}/Profile/History/ContactElements/AlternateId": {
      "get": {
        "tags": [
          "Preference"
        ],
        "summary": "This method allows you to retrieve the entire history of contact elements along with any consent associated for a single profile \r\nusing a specific combination of AlternateID and AlternateIDType. \r\nProfile-only consents, custom fields, groups, tags, and preferences will not be returned.",
        "operationId": "GetContactElementHistoryByAlternateId",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "alternateIdType",
            "in": "query",
            "description": "Value that identifies the type of alternate id that is being accessed.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "alternateId",
            "in": "query",
            "description": "This is the value that uniquely identifies the profile that is being retrieved.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserProfilePreference"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserProfilePreference"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserProfilePreference"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/{clientId}/Profile/History/CustomFields/{ProfileId}": {
      "get": {
        "tags": [
          "Preference"
        ],
        "summary": "This method will return the entire custom field history that is associated with a single profile.  Only the basic profile and \r\ncustom field history will be returned in the response.  Elements like consents, groups, tags, and preferences will not be returned.  \r\nCustom field history will be returned in ascending order by modified date.",
        "operationId": "GetCustomFieldHistory",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "profileId",
            "in": "path",
            "description": "This is the value that uniquely identifies the profile that is being retrieved.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.CustomFieldHistory"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.CustomFieldHistory"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.CustomFieldHistory"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/{clientId}/Profile/History/CustomFields/AlternateId": {
      "get": {
        "tags": [
          "Preference"
        ],
        "summary": "This method will return the entire custom field history that is associated with a single profile using an AlternateID/AlternateIDType \r\ncombination.  Only the basic profile and custom field history will be returned in the response.  Elements like consents, groups, tags, \r\nand preferences will not be returned.  Custom field history will be returned in ascending order by modified date.",
        "operationId": "GetCustomFieldHistoryByAlternateId",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "alternateIdType",
            "in": "query",
            "description": "Value that identifies the type of alternate id that is being accessed.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "alternateId",
            "in": "query",
            "description": "This is the value that uniquely identifies the profile that is being retrieved.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.CustomFieldHistory"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.CustomFieldHistory"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.CustomFieldHistory"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/{clientId}/Profile/History/Preferences/{ProfileId}": {
      "get": {
        "tags": [
          "Preference"
        ],
        "summary": "This method will return the current and historical preferences that are associated with the profile id.  \r\nThe basic profile, contact elements, and preference history will be returned in the response.  \r\nCustom fields, consents, groups, and tags will not be returned in the response.",
        "operationId": "GetUserProfileHistory",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "profileId",
            "in": "path",
            "description": "This is the value that uniquely identifies the profile that is being retrieved.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "filterId",
            "in": "query",
            "description": "To limit the results to preferences assocated with the filter.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.ProfilePreferenceHistory"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.ProfilePreferenceHistory"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.ProfilePreferenceHistory"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/{clientId}/Profile/History/Preferences/AlternateId": {
      "get": {
        "tags": [
          "Preference"
        ],
        "summary": "This method will return the current and historical preferences that are associated with a specific \r\nAlternateID/AlternateIDType combination.  The basic profile, contact elements, and preference history will \r\nbe returned in the response.  Custom fields, consents, groups, and tags will not be returned in the response.",
        "operationId": "GetUserProfileHistoryByAlternateId",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "alternateIdType",
            "in": "query",
            "description": "Value that identifies the type of alternate id that is being accessed.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "alternateId",
            "in": "query",
            "description": "This is the value that uniquely identifies the profile that is being retrieved.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "filterId",
            "in": "query",
            "description": "To limit the results to preferences assocated with the filter.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.ProfilePreferenceHistory"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.ProfilePreferenceHistory"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.ProfilePreferenceHistory"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/{clientId}/Profile/History/StandardFields/{ProfileId}": {
      "get": {
        "tags": [
          "Preference"
        ],
        "summary": "This method will return the entire history for standard fields associated with a single profile.  \r\nAlong with the Profile ID, a collection of current AlternateIDs is also returned with each update.  \r\nElements like consents, custom fields, groups, tags, and preferences will not be returned.  \r\nStandard field history will be returned in ascending order by modified date.",
        "operationId": "GetStandardFieldHistory",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "profileId",
            "in": "path",
            "description": "This is the value that uniquely identifies the profile that is being retrieved.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserProfilePreferenceList"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserProfilePreferenceList"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserProfilePreferenceList"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/{clientId}/Profile/History/StandardFields/AlternateId": {
      "get": {
        "tags": [
          "Preference"
        ],
        "summary": "This method allows you to retrieve the entire history for standard fields associated with a single profile using a specific \r\ncombination of AlternateID and AlternateIDType. Along with the Profile ID, a collection of current AlternateIDs is also \r\nreturned with each update. Elements like consents, custom fields, groups, tags, and preferences will \r\nnot be returned. Standard field history will be returned in ascending order by modified date.",
        "operationId": "GetStandardFieldHistoryByAlternateId",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "alternateIdType",
            "in": "query",
            "description": "Value that identifies the type of alternate id that is being accessed.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "alternateId",
            "in": "query",
            "description": "This is the value that uniquely identifies the profile that is being retrieved.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserProfilePreferenceList"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserProfilePreferenceList"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserProfilePreferenceList"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/{clientId}/Profile/Groups/AlternateId": {
      "get": {
        "tags": [
          "Preference"
        ],
        "summary": "This method will retrieve one or more profiles that are part of a group by using the AlternateID/AlternateIdType combination of the \r\ngroup’s primary profile.  Using this endpoint, if the profile's Alternate id is found then all of the profiles within that group are \r\nreturned in the response.  This method can only return up to 50 profiles. If more than 50 matching profiles are found, the API returns \r\na 403-Forbidden. All active consents, custom fields, groups, tags, and preferences for which you have permissions will be returned in the response.",
        "operationId": "GetGroupProfilesByAlternateId",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "groupType",
            "in": "query",
            "description": "This is the category that the group is defined under.  One of the following values: Address, \r\n            Alternate Id, Customer, Email, Group, Phone.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "alternateIdType",
            "in": "query",
            "description": "Value that identifies the type of alternate id that is being accessed.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "alternateId",
            "in": "query",
            "description": "This is the value that uniquely identifies the profile that is being retrieved.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "groupName",
            "in": "query",
            "description": "Optional GroupName used to restrict the profiles being returned.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "implied",
            "in": "query",
            "description": "Expressed preferences are explicitly stated by a user. Implied preferences are inherited from a parent \r\n            preference derived from the preference propagation rules. This flag, when set to true, will return implied preferences of \r\n            the parent preference along with the expressed preferences. If a preference on a profile is expressed, the MatchType property \r\n            will be returned with an \"Expressed\" value. If the preference is implied, the MatchType value will be \"Implied\".",
            "schema": {
              "type": "boolean",
              "default": false
            }
          },
          {
            "name": "includeConsentHistory",
            "in": "query",
            "description": "Optional parameter that, when set to true, returns consent history. When set to false, \r\n            it returns only the latest consent information. Defaults to true.",
            "schema": {
              "type": "boolean",
              "default": true
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserProfilePreference"
                  }
                }
              },
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserProfilePreference"
                  }
                }
              },
              "text/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserProfilePreference"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/{clientId}/Profile/Groups/Email": {
      "get": {
        "tags": [
          "Preference"
        ],
        "summary": "This method will retrieve one or more profiles that are part of a group by using the email address of a primary profile of the group.  \r\nUsing this endpoint, if the primary profile's email address is found then all of the profiles within that group are returned in \r\nthe response.  This method can only return up to 50 profiles. If more than 50 matching profiles are found, the API returns a \r\n403-Forbidden. All active consents, custom fields, groups, tags, and preferences for which you have permissions will be returned in the response.",
        "operationId": "GetGroupProfilesByEmailAddress",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "groupType",
            "in": "query",
            "description": "This is the category that the group is defined under.  One of the following values: Address, \r\n            Alternate Id, Customer, Email, Group, Phone.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "emailAddress",
            "in": "query",
            "description": "Email address that will be used to retrieve the profile.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "emailType",
            "in": "query",
            "description": "This is to filter the results on a specific email address type as defined under \"Contact Types\" in MyPreferences.  \r\n            As examples this may include personal, employee, or shared.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "groupName",
            "in": "query",
            "description": "Optional GroupName used to restrict the profiles being returned.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "implied",
            "in": "query",
            "description": "Expressed preferences are explicitly stated by a user. Implied preferences are inherited from a parent \r\n            preference derived from the preference propagation rules. This flag, when set to true, will return implied preferences of \r\n            the parent preference along with the expressed preferences. If a preference on a profile is expressed, the MatchType property \r\n            will be returned with an \"Expressed\" value. If the preference is implied, the MatchType value will be \"Implied\".",
            "schema": {
              "type": "boolean",
              "default": false
            }
          },
          {
            "name": "includeConsentHistory",
            "in": "query",
            "description": "Optional parameter that, when set to true, returns consent history. When set to false, \r\n            it returns only the latest consent information. Defaults to true.",
            "schema": {
              "type": "boolean",
              "default": true
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserProfilePreference"
                  }
                }
              },
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserProfilePreference"
                  }
                }
              },
              "text/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserProfilePreference"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/{clientId}/Profile/Groups": {
      "get": {
        "tags": [
          "Preference"
        ],
        "summary": "This method will retrieve one or more profiles that are part of a group by using the name of the group.  \r\nIf the group's name is found then all of the profiles within that group are returned in the response.  \r\nThis method can only return up to 50 profiles. If more than 50 matching profiles are found, the API returns a 403-Forbidden.  \r\nAll active consents, custom fields, groups, tags, and preferences for which you have permissions will be returned in the response.",
        "operationId": "GetGroupProfilesByGroupName",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "groupType",
            "in": "query",
            "description": "This is the category that the group is defined under.  One of the following values: Address, \r\n            Alternate Id, Customer, Email, Group, Phone.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "groupName",
            "in": "query",
            "description": "The name of the group the profile is the primary profile for.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "implied",
            "in": "query",
            "description": "Expressed preferences are explicitly stated by a user. Implied preferences are inherited from a parent \r\n            preference derived from the preference propagation rules. This flag, when set to true, will return implied preferences of \r\n            the parent preference along with the expressed preferences. If a preference on a profile is expressed, the MatchType property \r\n            will be returned with an \"Expressed\" value. If the preference is implied, the MatchType value will be \"Implied\".",
            "schema": {
              "type": "boolean",
              "default": false
            }
          },
          {
            "name": "includeConsentHistory",
            "in": "query",
            "description": "Optional parameter that, when set to true, returns consent history. When set to false, \r\n            it returns only the latest consent information. Defaults to true.",
            "schema": {
              "type": "boolean",
              "default": true
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserProfilePreference"
                  }
                }
              },
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserProfilePreference"
                  }
                }
              },
              "text/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserProfilePreference"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/{clientId}/Profile/Groups/Phone": {
      "get": {
        "tags": [
          "Preference"
        ],
        "summary": "This method will retrieve one or more profiles that are part of a group by using the phone number of a primary profile of the group.  \r\nUsing this endpoint, if the primary profile's phone number is found then all of the profiles within that group are returned in the \r\nresponse.  This method can only return up to 50 profiles. If more than 50 matching profiles are found, the API returns a 403-Forbidden.  \r\nAll active consents, custom fields, groups, tags, and preferences for which you have permissions will be returned in the response.",
        "operationId": "GetGroupProfilesByPhoneNumber",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "groupType",
            "in": "query",
            "description": "This is the category that the group is defined under.  One of the following values: Address, \r\n            Alternate Id, Customer, Email, Group, Phone.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "phoneNumber",
            "in": "query",
            "description": "The phone number digits that will be used to retrieve the profile.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "phoneType",
            "in": "query",
            "description": "This is to filter the results on a specific phone number type as defined under \"Contact Types\" in MyPreferences.  \r\n            As examples this may include home, mobile, business, or public.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "groupName",
            "in": "query",
            "description": "Optional GroupName used to restrict the profiles being returned.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "implied",
            "in": "query",
            "description": "Expressed preferences are explicitly stated by a user. Implied preferences are inherited from a parent \r\n            preference derived from the preference propagation rules. This flag, when set to true, will return implied preferences of \r\n            the parent preference along with the expressed preferences. If a preference on a profile is expressed, the MatchType property \r\n            will be returned with an \"Expressed\" value. If the preference is implied, the MatchType value will be \"Implied\".",
            "schema": {
              "type": "boolean",
              "default": false
            }
          },
          {
            "name": "includeConsentHistory",
            "in": "query",
            "description": "Optional parameter that, when set to true, returns consent history. When set to false, \r\n            it returns only the latest consent information. Defaults to true.",
            "schema": {
              "type": "boolean",
              "default": true
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserProfilePreference"
                  }
                }
              },
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserProfilePreference"
                  }
                }
              },
              "text/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserProfilePreference"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/{clientId}/Profile/Groups/{profileId}": {
      "get": {
        "tags": [
          "Preference"
        ],
        "summary": "This method will retrieve one or more profiles that are part of a group by using the profile Id of the group’s primary profile.  \r\nUsing this endpoint, if the profile id is found then all of the profiles within that group are returned in the response.  \r\nThis method can only return up to 50 profiles. If more than 50 matching profiles are found, the API returns a 403-Forbidden.  \r\nAll active consents, custom fields, groups, tags, and preferences for which you have permissions will be returned in the response.",
        "operationId": "GetGroupProfilessByProfile",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "groupType",
            "in": "query",
            "description": "This is the category that the group is defined under.  One of the following values: Address, \r\n            Alternate Id, Customer, Email, Group, Phone.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "profileId",
            "in": "path",
            "description": "This is the value that uniquely identifies the profile that is being retrieved.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "groupName",
            "in": "query",
            "description": "Optional GroupName used to restrict the profiles being returned.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "implied",
            "in": "query",
            "description": "Expressed preferences are explicitly stated by a user. Implied preferences are inherited from a parent \r\n            preference derived from the preference propagation rules. This flag, when set to true, will return implied preferences of \r\n            the parent preference along with the expressed preferences. If a preference on a profile is expressed, the MatchType property \r\n            will be returned with an \"Expressed\" value. If the preference is implied, the MatchType value will be \"Implied\".",
            "schema": {
              "type": "boolean",
              "default": false
            }
          },
          {
            "name": "includeConsentHistory",
            "in": "query",
            "description": "Optional parameter that, when set to true, returns consent history. When set to false, \r\n            it returns only the latest consent information. Defaults to true.",
            "schema": {
              "type": "boolean",
              "default": true
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserProfilePreference"
                  }
                }
              },
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserProfilePreference"
                  }
                }
              },
              "text/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserProfilePreference"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/{clientId}/Profile/Preferences/{profileId}/Archive": {
      "put": {
        "tags": [
          "Preference"
        ],
        "summary": "This method deactivates and archives preferences associated with the Profile or Contact Elements on a profile \r\nacross one or more Filters. To deactivate all preferences across all Contact Elements and Filters on a profile, \r\nsimply set the GlobalDeactivate parameter to true. Archived preferences are no longer returned via the MyPrefererences \r\nstandard API. You can create a Segment to retrieve archived preferences using the MyPreferences Bulk Export API.",
        "operationId": "ArchiveUserProfilePreferences",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "profileId",
            "in": "path",
            "description": "Id associated with the profile.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "requestBody": {
          "description": "Preferences to submit",
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/Profiles.REST.Core.Models.ArchivePreferences"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Profiles.REST.Core.Models.ArchivePreferences"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/Profiles.REST.Core.Models.ArchivePreferences"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/Profiles.REST.Core.Models.ArchivePreferences"
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "No Content"
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/{clientId}/Profile/{ProfileId}": {
      "delete": {
        "tags": [
          "Profile"
        ],
        "summary": "This method allows you to permanently delete a profile and all associated preferences. \r\nIt must be used with caution as the delete operation cannot be reversed.",
        "operationId": "DeleteUserProfile",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "profileId",
            "in": "path",
            "description": "Id associated with the profile that you want to delete permanently.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "reasonCode",
            "in": "query",
            "description": "An optional parameter that can be used to store the reason for deletion.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "No Content"
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      },
      "get": {
        "tags": [
          "Profile"
        ],
        "summary": "This method will return a single user profile that matches the Profile Id specified in the request. All active consents, custom fields, groups, tags, and preferences for which you have permissions will be returned in the response.\r\nAny profile items which are inactive will not be returned on a profile retrieval",
        "operationId": "GetUserProfile",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "profileId",
            "in": "path",
            "description": "This is the value that uniquely identifies the profile that is being retrieved.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "implied",
            "in": "query",
            "description": "Expressed preferences are explicitly stated by a user. Implied preferences are inherited from a parent \r\n            preference derived from the preference propagation rules. This flag, when set to true, will return implied preferences of \r\n            the parent preference along with the expressed preferences. If a preference on a profile is expressed, the MatchType property \r\n            will be returned with an \"Expressed\" value. If the preference is implied, the MatchType value will be \"Implied\".",
            "schema": {
              "type": "boolean",
              "default": false
            }
          },
          {
            "name": "includeConsentHistory",
            "in": "query",
            "description": "Optional parameter that, when set to true, returns consent history. When set to false, \r\n            it returns only the latest consent information. Defaults to true.",
            "schema": {
              "type": "boolean",
              "default": true
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserProfilePreference"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserProfilePreference"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserProfilePreference"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      },
      "post": {
        "tags": [
          "Profile"
        ],
        "summary": "This method allows you to update a profile without doing a GET first if the Profile ID is already known.  \r\nThis method will perform an update operation on all preferences, consents, groups, tags, and custom fields \r\nsubmitted with the request.",
        "operationId": "UpdateUserProfile",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "profileId",
            "in": "path",
            "description": "Id of the profile to associate the preferences with.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "requestBody": {
          "description": "Preferences to submit",
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserProfilePreference"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserProfilePreference"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserProfilePreference"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserProfilePreference"
              }
            }
          }
        },
        "responses": {
          "202": {
            "description": "Accepted"
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/{clientId}/Profile/Address": {
      "get": {
        "tags": [
          "Profile"
        ],
        "summary": "This method will retrieve one or more profiles that have an exact match on the mailing address field values specified in the request.  \r\nPassing minimal data in the parameters may result in multiple profiles being returned in the response, so the more parameters passed in will increase the \r\nlikelihood of finding the desired profile being searched for.  All fields that are passed in need to match the values in the profile or the record will not be returned.  \r\nAll active consents, custom fields, groups, tags, and preferences for which you have permissions will be returned in the response.\r\nFor example, if a user wants to search for a profile with the name Audrey Julia Michaels at an unknown address on a road named Jefferson in Roswell, GA, they could use the following request:\r\nGET {clientId}/Profile/Address?address1=Jefferson&city=Roswell&stateProvince=GA&addressType=Home&firstName=Audrey&middleName=Julia&lastName=Michaels&partialAddress1Match=true&partialNameMatch=true",
        "operationId": "GetUserProfilesByAddress",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "address1",
            "in": "query",
            "description": "First line of the mailing address in the profile being searched on.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "address2",
            "in": "query",
            "description": "Second line of the mailing address in the profile being searched on.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "city",
            "in": "query",
            "description": "City, Town, or Village of the mailing address in the profile being searched on.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "stateProvince",
            "in": "query",
            "description": "Province state or district identified in the profile being searched on.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "postalCode",
            "in": "query",
            "description": "The postal or zip code identified in the address in the profile being searched on.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "addressType",
            "in": "query",
            "description": "This is to filter the results on a specific \"Address type\" as defined under \"Contact Types\" in MyPreferences.  As an example this may include home, business, store, or PO Box addresses",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "firstName",
            "in": "query",
            "description": "First name of the person whose profile is being searched on.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "middleName",
            "in": "query",
            "description": "Middle name of the person whose profile is being searched on.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "lastName",
            "in": "query",
            "description": "Last name of the person whose profile is being searched on.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "partialAddress1Match",
            "in": "query",
            "description": "A boolean property when set to true will match on partial address1 field values (Not address 2)  \r\n            For example: When this property is set to true and the user passes in \"Camden\", the results will match on \"12 Camden Lane\" or \"134 Camdenisk Way\", but not \"Cameron\" or \"1453 Camdin Rd\".",
            "schema": {
              "type": "boolean",
              "default": false
            }
          },
          {
            "name": "partialNameMatch",
            "in": "query",
            "description": "A boolean property when set to true will match on partial name fields (firstName, MiddleName, lastName).  \r\n            For example: When this property is set to true and the user passes in a first name of \"Bill\" and last name of \"Day\", the results will match \"Bill Dayton\" or \"Billy Day\", but not \"Will Day\" or \"Bill David\".",
            "schema": {
              "type": "boolean",
              "default": false
            }
          },
          {
            "name": "implied",
            "in": "query",
            "description": "Expressed preferences are explicitly stated by a user. Implied preferences are inherited from a parent \r\n            preference derived from the preference propagation rules. This flag, when set to true, will return implied preferences of \r\n            the parent preference along with the expressed preferences. If a preference on a profile is expressed, the MatchType property \r\n            will be returned with an \"Expressed\" value. If the preference is implied, the MatchType value will be \"Implied\".",
            "schema": {
              "type": "boolean",
              "default": false
            }
          },
          {
            "name": "includeInactiveProfiles",
            "in": "query",
            "description": "Boolean flag that when set to true returns both active and inactive profiles. If not included the value will default to false.",
            "schema": {
              "type": "boolean",
              "default": false
            }
          },
          {
            "name": "includeConsentHistory",
            "in": "query",
            "description": "Optional parameter that, when set to true, returns consent history. When set to false, \r\n            it returns only the latest consent information. Defaults to true.",
            "schema": {
              "type": "boolean",
              "default": true
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserProfilePreference"
                  }
                }
              },
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserProfilePreference"
                  }
                }
              },
              "text/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserProfilePreference"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/{clientId}/Profile/AlternateId": {
      "get": {
        "tags": [
          "Profile"
        ],
        "summary": "This method will return a single user profile that matches the AlternateID and AlternateTypeID combination specified in the request.  \r\nAll active consents, custom fields, groups, tags, and preferences for which you have permissions will be returned in the response.\r\nAny profile items which are inactive will not be returned on a profile retrieval",
        "operationId": "GetUserProfileByAlternateId",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "alternateIdType",
            "in": "query",
            "description": "Value that identifies the type of alternate id that is being accessed.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "alternateId",
            "in": "query",
            "description": "This is the value that uniquely identifies the profile that is being retrieved.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "implied",
            "in": "query",
            "description": "Expressed preferences are explicitly stated by a user. Implied preferences are inherited from a parent \r\n            preference derived from the preference propagation rules. This flag, when set to true, will return implied preferences of \r\n            the parent preference along with the expressed preferences. If a preference on a profile is expressed, the MatchType property \r\n            will be returned with an \"Expressed\" value. If the preference is implied, the MatchType value will be \"Implied\".",
            "schema": {
              "type": "boolean",
              "default": false
            }
          },
          {
            "name": "matchInactive",
            "in": "query",
            "description": "If set to true, returns active and inactive Alternate Ids and Contact Elements. The default setting is false.",
            "schema": {
              "type": "boolean",
              "default": false
            }
          },
          {
            "name": "includeConsentHistory",
            "in": "query",
            "description": "Optional parameter that, when set to true, returns consent history. When set to false, \r\n            it returns only the latest consent information. Defaults to true.",
            "schema": {
              "type": "boolean",
              "default": true
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserProfilePreference"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserProfilePreference"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserProfilePreference"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      },
      "patch": {
        "tags": [
          "Profile"
        ],
        "summary": "The PATCH method applies partial modifications to a single profile specified by the AlternateID and AlternateIdType parameter \r\ncombination.  Only information specified in the path and values included in the body will be updated in the profile.  \r\nAdd, replace, remove, and test PATCH operations will be supported in this API",
        "operationId": "PatchUserProfileByAlternateId",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "alternateId",
            "in": "query",
            "description": "This is the value that uniquely identifies the profile that is being retrieved.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "alternateIdType",
            "in": "query",
            "description": "Value that identifies the type of alternate id that is being accessed.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "description": "A collection of PATCH operations that you want to perform on the User Profile object.",
          "content": {
            "application/json-patch+json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.JsonPatch.Operations.Operation"
                }
              }
            },
            "application/json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.JsonPatch.Operations.Operation"
                }
              }
            },
            "text/json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.JsonPatch.Operations.Operation"
                }
              }
            },
            "application/*+json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.JsonPatch.Operations.Operation"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserProfilePreference"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserProfilePreference"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserProfilePreference"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      },
      "post": {
        "tags": [
          "Profile"
        ],
        "summary": "This endpoint can be used for both inserts and updates to a profile using the Alternate ID/Alternate Type provided in the request.  \r\nIf the Alternate ID and Alternate Type combination are found on an existing profile, the profile will be updated with the information \r\nsubmitted in the request.  If not, this method will perform an insert operation to create the profile",
        "operationId": "UpdateUserProfileByAlternateId",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "alternateId",
            "in": "query",
            "description": "This is the value that uniquely identifies the profile that is being retrieved.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "alternateIdType",
            "in": "query",
            "description": "Value that identifies the type of alternate id that is being accessed.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "description": "Profile to submit",
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserProfilePreference"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserProfilePreference"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserProfilePreference"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserProfilePreference"
              }
            }
          }
        },
        "responses": {
          "202": {
            "description": "Accepted"
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      },
      "put": {
        "tags": [
          "Profile"
        ],
        "summary": "This method  allows you to do a full replace of a profile specified by the Alternate ID and AlternateIdType parameters.  \r\nThe original information contained in the profile will be overwritten by the information contained in the request.  \r\nProperties and collections that are not included in the PUT request will be considered blank, and will no longer be \r\nincluded in the profile.",
        "operationId": "PutUserProfileByAlternateId",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "alternateId",
            "in": "query",
            "description": "This is the value that uniquely identifies the profile that is being retrieved.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "alternateIdType",
            "in": "query",
            "description": "Value that identifies the type of alternate id that is being accessed.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "description": "UserProfile to submit",
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserProfilePreference"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserProfilePreference"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserProfilePreference"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserProfilePreference"
              }
            }
          }
        },
        "responses": {
          "202": {
            "description": "Accepted",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserProfilePreference"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserProfilePreference"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserProfilePreference"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/{clientId}/Profile/Consent/Attributes": {
      "get": {
        "tags": [
          "Profile"
        ],
        "summary": "This method will retrieve one or more Profiles that match the consent attributes specified in the request.  \r\nMore than one attribute can be filtered on, and the parameters are read in as an array with the first field and value \r\ncombination starting with 0.  All attribute fields and values that are identified in the parameters need to match a profile \r\nfor it to be returned in the response.  This method can only return up to 50 profiles. If more than 50 matching profiles are \r\nfound, the API returns a 403-Forbidden.\r\nAll active consents, custom fields, groups, tags, and preferences for which you have permissions will be returned in the response.\r\nFor example: if a user wants to find a profile that has an attribute \"alpha\" equal to \"phone\" and attribute \"beta\" equal to \r\n\"account\", they could use this request to achieve that result:\r\nGET {clientId}/Profile/Consent/Attributes?attributes[0].Key=alpha&attributes[0].Value=phone&attributes[1].Key=beta&attributes[1].Value=account",
        "operationId": "GetUserProfilesByConsentAttributes",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "attributes",
            "in": "query",
            "description": "An array of attributes search criteria which is organized by the SearchConsentAttribute collection.  \r\n            This will be arranged by Key and Value pairs that will represent the customer fields to search on.  \r\n            The parameters are read in as an array with the first field and value combination starting with 0.",
            "schema": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/Profiles.REST.Core.Models.SearchConsentAttribute"
              }
            }
          },
          {
            "name": "includeConsentHistory",
            "in": "query",
            "description": "Optional parameter that, when set to true, returns consent history. When set to false, \r\n            it returns only the latest consent information. Defaults to true.",
            "schema": {
              "type": "boolean",
              "default": true
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserProfilePreference"
                  }
                }
              },
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserProfilePreference"
                  }
                }
              },
              "text/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserProfilePreference"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/{clientId}/Profile/CustomFields": {
      "get": {
        "tags": [
          "Profile"
        ],
        "summary": "This method will retrieve one or more Profiles that contain the custom fields and values specified in the request.  \r\nMore than one custom field can be filtered on, and the parameters are read in as an array with the first field and value combination \r\nstarting with 0.  This method can only return up to 50 profiles. If more than 50 matching profiles are found, the API returns a \r\n403-Forbidden. All active consents, custom fields, groups, tags, and preferences for which you have permissions will be returned in the response.\r\nFor example: if a user wants to find a profile that has custom field \"alpha\" equal to \"couch\" and custom field \"beta\" equal to \"book\", \r\nthey could use this request to achieve that result:  \r\nGET {clientId}/Profile/CustomFields?customFields[0].Name=alpha&customFields[0].Value=couch&customFields[1].Name=beta&customFields[1].Value=book",
        "operationId": "GetUserProfilesByCustomFields",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "customFields",
            "in": "query",
            "description": "An array of custom field search criteria which is organized by the SearchCustomFieldValue collection. \r\n            This will be arranged by Name and Value pairs that will represent the customer fields to search on.  \r\n            The parameters are read in as an array with the first field and value combination starting with 0.",
            "schema": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/Profiles.REST.Core.Models.SearchCustomFieldValue"
              }
            }
          },
          {
            "name": "includeConsentHistory",
            "in": "query",
            "description": "Optional parameter that, when set to true, returns consent history. When set to false, \r\n            it returns only the latest consent information. Defaults to true.",
            "schema": {
              "type": "boolean",
              "default": true
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserProfilePreference"
                  }
                }
              },
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserProfilePreference"
                  }
                }
              },
              "text/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserProfilePreference"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/{clientId}/Profile/CustomFields/SelectList": {
      "get": {
        "tags": [
          "Profile"
        ],
        "summary": "This method expands the ability to search for profiles by custom fields by the inclusion of an operator for each custom field.  \r\nThe operator specifies whether the values in the CustomFields.Value parameter should be evaluated by \"Equals, All of, or Any of\" \r\nadding flexibility to filtering by a custom field.  This method can only return up to 50 profiles. If more than 50 matching profiles \r\nare found, the API returns a 403-Forbidden. All active consents, custom fields, groups, tags, and preferences for which you have permissions will be returned in the response.\r\nFor example: if a user wants to find profiles that has custom field \"alpha\" with any of the values \"couch, chair or table\" the \r\nfollowing request to achieve that result:  \r\nGET {clientId}/Profile/CustomFields/SelectList? customFields[0].OperatorId=3&customFields[0].Name=alpha&customFields[0].Value=couch:chair:table",
        "operationId": "GetUserProfilesByCustomFieldsSelectList",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "customFields",
            "in": "query",
            "description": "An array of custom field search criteria which is organized by the SearchCustomFieldSelectListValue \r\n            collection.  This will be arranged by Operator, Name, and Value properties that will represent the customer fields to search on.  \r\n            The parameters are read in as an array with the first field and value combination starting with 0.",
            "schema": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/Profiles.REST.Core.Models.SearchCustomFieldSelectListValue"
              }
            }
          },
          {
            "name": "includeConsentHistory",
            "in": "query",
            "description": "Optional parameter that, when set to true, returns consent history. When set to false, \r\n            it returns only the latest consent information. Defaults to true.",
            "schema": {
              "type": "boolean",
              "default": true
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserProfilePreference"
                  }
                }
              },
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserProfilePreference"
                  }
                }
              },
              "text/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserProfilePreference"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/{clientId}/Profile/Email": {
      "get": {
        "tags": [
          "Profile"
        ],
        "summary": "This method will retrieve one or more profiles that match the email address specified in the request.  \r\nThe EmailType is an optional parameter that can be passed in to further restrict the return set.  \r\nThis method can only return up to 50 profiles. If more than 50 matching profiles are found, the API returns a 403-Forbidden. All active consents, custom fields, groups, tags, and preferences for which you have permissions will be returned in the response.",
        "operationId": "GetUserProfilesByEmail",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "emailAddress",
            "in": "query",
            "description": "Email address that will be used to retrieve the profile.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "emailType",
            "in": "query",
            "description": "This is to filter the results on a specific email address type as defined under \"Contact Types\" in MyPreferences.  \r\n            As examples this may include personal, employee, or shared.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "implied",
            "in": "query",
            "description": "Expressed preferences are explicitly stated by a user. Implied preferences are inherited from a parent \r\n            preference derived from the preference propagation rules. This flag, when set to true, will return implied preferences of \r\n            the parent preference along with the expressed preferences. If a preference on a profile is expressed, the MatchType property \r\n            will be returned with an \"Expressed\" value. If the preference is implied, the MatchType value will be \"Implied\".",
            "schema": {
              "type": "boolean",
              "default": false
            }
          },
          {
            "name": "includeInactiveProfiles",
            "in": "query",
            "description": "Boolean flag that when set to true returns both active and inactive profiles. If not included the value will default to false.",
            "schema": {
              "type": "boolean",
              "default": false
            }
          },
          {
            "name": "includeConsentHistory",
            "in": "query",
            "description": "Optional parameter that, when set to true, returns consent history. When set to false, \r\n            it returns only the latest consent information. Defaults to true.",
            "schema": {
              "type": "boolean",
              "default": true
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserProfilePreference"
                  }
                }
              },
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserProfilePreference"
                  }
                }
              },
              "text/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserProfilePreference"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/{clientId}/Profile/Name": {
      "get": {
        "tags": [
          "Profile"
        ],
        "summary": "This method will retrieve one or more Profiles that fit an exact match the first, middle, and last name values specified in the request. \r\nThis method can only return up to 50 profiles. If more than 50 matching profiles are found, the API returns a 403-Forbidden.  \r\nAll active consents, custom fields, groups, tags, and preferences for which you have permissions will be returned in the response.",
        "operationId": "GetUserProfilesByName",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "lastName",
            "in": "query",
            "description": "Last name used to retrieve the matching profile(s)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "firstName",
            "in": "query",
            "description": "First name used to retrieve the matching profile(s)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "middleName",
            "in": "query",
            "description": "Middle name used to retrieve the matching profile(s)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "implied",
            "in": "query",
            "description": "Expressed preferences are explicitly stated by a user. Implied preferences are inherited from a parent \r\n            preference derived from the preference propagation rules. This flag, when set to true, will return implied preferences of \r\n            the parent preference along with the expressed preferences. If a preference on a profile is expressed, the MatchType property \r\n            will be returned with an \"Expressed\" value. If the preference is implied, the MatchType value will be \"Implied\".",
            "schema": {
              "type": "boolean",
              "default": false
            }
          },
          {
            "name": "includeInactiveProfiles",
            "in": "query",
            "description": "Boolean flag that when set to true returns both active and inactive profiles. If not included the value will default to false.",
            "schema": {
              "type": "boolean",
              "default": false
            }
          },
          {
            "name": "includeConsentHistory",
            "in": "query",
            "description": "Optional parameter that, when set to true, returns consent history. When set to false, \r\n            it returns only the latest consent information. Defaults to true.",
            "schema": {
              "type": "boolean",
              "default": true
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserProfilePreference"
                  }
                }
              },
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserProfilePreference"
                  }
                }
              },
              "text/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserProfilePreference"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/{clientId}/Profile/Name/Partial": {
      "get": {
        "tags": [
          "Profile"
        ],
        "summary": "This method will retrieve one or more Profiles that fit a partial  match the first, middle, and last name values specified \r\nin the request. This method can only return up to 50 profiles. If more than 50 matching profiles are found, the API \r\nreturns a 403-Forbidden. All active consents, custom fields, groups, tags, and preferences for which you have permissions will be returned in the response.\r\nFor example: \"Smi\" included in the last name parameter could match \"Smith\" or\"Smilla\", but not “Small” or “Sampson”...",
        "operationId": "GetUserProfilesByPartialName",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "lastName",
            "in": "query",
            "description": "Last name used to retrieve the matching profile(s)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "firstName",
            "in": "query",
            "description": "First name used to retrieve the matching profile(s)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "middleName",
            "in": "query",
            "description": "Middle name used to retrieve the matching profile(s)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "implied",
            "in": "query",
            "description": "Expressed preferences are explicitly stated by a user. Implied preferences are inherited from a parent \r\n            preference derived from the preference propagation rules. This flag, when set to true, will return implied preferences of \r\n            the parent preference along with the expressed preferences. If a preference on a profile is expressed, the MatchType property \r\n            will be returned with an \"Expressed\" value. If the preference is implied, the MatchType value will be \"Implied\".",
            "schema": {
              "type": "boolean",
              "default": false
            }
          },
          {
            "name": "includeInactiveProfiles",
            "in": "query",
            "description": "Boolean flag that when set to true returns both active and inactive profiles. If not included the value will default to false.",
            "schema": {
              "type": "boolean",
              "default": false
            }
          },
          {
            "name": "includeConsentHistory",
            "in": "query",
            "description": "Optional parameter that, when set to true, returns consent history. When set to false, \r\n            it returns only the latest consent information. Defaults to true.",
            "schema": {
              "type": "boolean",
              "default": true
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserProfilePreference"
                  }
                }
              },
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserProfilePreference"
                  }
                }
              },
              "text/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserProfilePreference"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/{clientId}/Profile/Phone": {
      "get": {
        "tags": [
          "Profile"
        ],
        "summary": "This method will retrieve one or more Profiles that match the phone number and type parameters included in the request. \r\nThis method can only return up to 50 profiles. If more than 50 matching profiles are found, the API returns a 403-Forbidden.  \r\nAll active consents, custom fields, groups, tags, and preferences for which you have permissions will be returned in the response.",
        "operationId": "GetUserProfilesByPhone",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "phoneNumber",
            "in": "query",
            "description": "The phone number digits that will be used to retrieve the profile.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "phoneType",
            "in": "query",
            "description": "This is to filter the results on a specific phone number type as defined under \"Contact Types\" in MyPreferences.  \r\n            As examples this may include home, mobile, business, or public.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "implied",
            "in": "query",
            "description": "Expressed preferences are explicitly stated by a user. Implied preferences are inherited from a parent \r\n            preference derived from the preference propagation rules. This flag, when set to true, will return implied preferences of \r\n            the parent preference along with the expressed preferences. If a preference on a profile is expressed, the MatchType property \r\n            will be returned with an \"Expressed\" value. If the preference is implied, the MatchType value will be \"Implied\".",
            "schema": {
              "type": "boolean",
              "default": false
            }
          },
          {
            "name": "includeInactiveProfiles",
            "in": "query",
            "description": "Boolean flag that when set to true returns both active and inactive profiles. If not included the value will default to false.",
            "schema": {
              "type": "boolean",
              "default": false
            }
          },
          {
            "name": "includeConsentHistory",
            "in": "query",
            "description": "Optional parameter that, when set to true, returns consent history. When set to false, \r\n            it returns only the latest consent information. Defaults to true.",
            "schema": {
              "type": "boolean",
              "default": true
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserProfilePreference"
                  }
                }
              },
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserProfilePreference"
                  }
                }
              },
              "text/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserProfilePreference"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/{clientId}/Profile/Preference/Attributes": {
      "get": {
        "tags": [
          "Profile"
        ],
        "summary": "This method will retrieve one or more Profiles that match the preference attributes specified in the request.  \r\nMore than one attribute can be filtered on, and the parameters are read in as an array with the first field and value \r\ncombination starting with 0.  All attribute fields and values that are identified in the parameters need to match a profile \r\nfor it to be returned in the response.  This method can only return up to 50 profiles. If more than 50 matching profiles are \r\nfound, the API returns a 403-Forbidden.\r\nAll active consents, custom fields, groups, tags, and preferences for which you have permissions will be returned in the response.\r\nFor example: if a user wants to find a profile that has an attribute \"alpha\" equal to \"phone\" and attribute \"beta\" equal to \r\n\"account\", they could use this request to achieve that result:\r\nGET {clientId}/Profile/Preference/Attributes?attributes[0].Key=alpha&attributes[0].Value=phone&attributes[1].Key=beta&attributes[1].Value=account",
        "operationId": "GetUserProfilesByPreferenceAttributes",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "attributes",
            "in": "query",
            "description": "An array of attributes search criteria which is organized by the SearchPreferenceAttribute collection.  \r\n            This will be arranged by Key and Value pairs that will represent the customer fields to search on.  \r\n            The parameters are read in as an array with the first field and value combination starting with 0.",
            "schema": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/Profiles.REST.Core.Models.SearchPreferenceAttribute"
              }
            }
          },
          {
            "name": "includeConsentHistory",
            "in": "query",
            "description": "Optional parameter that, when set to true, returns consent history. When set to false, \r\n            it returns only the latest consent information. Defaults to true.",
            "schema": {
              "type": "boolean",
              "default": true
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserProfilePreference"
                  }
                }
              },
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserProfilePreference"
                  }
                }
              },
              "text/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserProfilePreference"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/{clientId}/Profile/Tags": {
      "get": {
        "tags": [
          "Profile"
        ],
        "summary": "Retrieve profiles by an exact match on one or more tag values.  Tag parameters are read in as an array with the first tag \r\nvalue starting with 0.  This method can only return up to 50 profiles. If more than 50 matching profiles are found, the API \r\nreturns a 403-Forbidden. All active consents, custom fields, groups, tags, and preferences for which you have permissions will be returned in the response.\r\nFor Example: If a user wants to return profiles that can have either \"tester\" and \"preferred\" tags and return all implied \r\npreferences and a full consent history, the following API call can be used:\r\nGET {clientId}/Profiles/Tags?tag[0]= tester&tag[1]=preferred&exactMatch=false&implied=true",
        "operationId": "GetUserProfilesByTags",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "tag",
            "in": "query",
            "description": "List of tags used to retrieve the data.  Tags are read in as an array with the first tag value starting with 0.  \r\n            All tag values that are identified in the parameters need to match a profile for it to be returned in the response.",
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "exactMatch",
            "in": "query",
            "description": "Boolean flag that when set to false, returns profile(s) that match on any of the tags in tagList.  \r\n            When this value is set to true, all of the tags that are in the tagList must match for the profile to be returned.",
            "schema": {
              "type": "boolean",
              "default": true
            }
          },
          {
            "name": "multipleProfiles",
            "in": "query",
            "description": "Boolean flag that when set to true, returns all profile(s) that match on any of the tags in tagList.",
            "schema": {
              "type": "boolean",
              "default": false
            }
          },
          {
            "name": "implied",
            "in": "query",
            "description": "Expressed preferences are explicitly stated by a user. Implied preferences are inherited from a parent \r\n            preference derived from the preference propagation rules. This flag, when set to true, will return implied preferences of \r\n            the parent preference along with the expressed preferences. If a preference on a profile is expressed, the MatchType property \r\n            will be returned with an \"Expressed\" value. If the preference is implied, the MatchType value will be \"Implied\".",
            "schema": {
              "type": "boolean",
              "default": false
            }
          },
          {
            "name": "includeConsentHistory",
            "in": "query",
            "description": "Optional parameter that, when set to true, returns consent history. When set to false, \r\n            it returns only the latest consent information. Defaults to true.",
            "schema": {
              "type": "boolean",
              "default": true
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserProfilePreference"
                  }
                }
              },
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserProfilePreference"
                  }
                }
              },
              "text/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserProfilePreference"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/{clientId}/Profile/{profileId}": {
      "patch": {
        "tags": [
          "Profile"
        ],
        "summary": "The PATCH method applies partial modifications to a single profile specified by the ProfileId parameter.  \r\nOnly information specified in the path and values included in the body will be updated in the profile.",
        "operationId": "PatchUserProfile",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "profileId",
            "in": "path",
            "description": "Id associated with the profile.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "requestBody": {
          "description": "A collection of PATCH operations that you want to perform on the User Profile object.",
          "content": {
            "application/json-patch+json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.JsonPatch.Operations.Operation"
                }
              }
            },
            "application/json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.JsonPatch.Operations.Operation"
                }
              }
            },
            "text/json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.JsonPatch.Operations.Operation"
                }
              }
            },
            "application/*+json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.JsonPatch.Operations.Operation"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserProfilePreference"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserProfilePreference"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserProfilePreference"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      },
      "put": {
        "tags": [
          "Profile"
        ],
        "summary": "This method  allows you to do a full replace of a profile.  The original information contained in the profile will be overwritten \r\nby the information contained in the request.  Properties and collections that are not included in the PUT request will be \r\nconsidered blank, and will no longer be included in the profile.",
        "operationId": "PutUserProfile",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "profileId",
            "in": "path",
            "description": "Id of the Profile to update",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "requestBody": {
          "description": "UserProfile to submit",
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserProfilePreference"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserProfilePreference"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserProfilePreference"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserProfilePreference"
              }
            }
          }
        },
        "responses": {
          "202": {
            "description": "Accepted",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserProfilePreference"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserProfilePreference"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserProfilePreference"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/{clientId}/Profile": {
      "post": {
        "tags": [
          "Profile"
        ],
        "summary": "This method allows you to submit a user’s profile, preference, and consent information in a single call to \r\ncreate a unique Profile record.  The response will include a system generated ProfileId that can be used to retrieve \r\nor edit the profile later.",
        "operationId": "PostUserProfile",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "description": "UserProfile to submit",
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserProfilePreference"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserProfilePreference"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserProfilePreference"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserProfilePreference"
              }
            }
          }
        },
        "responses": {
          "202": {
            "description": "Accepted",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.AcceptedResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.AcceptedResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.AcceptedResponse"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/{clientId}/ProfileDataExport/Segment/{segmentLink}": {
      "get": {
        "tags": [
          "ProfileDataExport"
        ],
        "summary": "This method allows you to retrieve a Segment by it's id.",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "segmentLink",
            "in": "path",
            "description": "The unique id of the Segment",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "responses": {
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/{clientId}/ProfileDataExport/Segment": {
      "post": {
        "tags": [
          "ProfileDataExport"
        ],
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/Newtonsoft.Json.Linq.JToken"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Newtonsoft.Json.Linq.JToken"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/Newtonsoft.Json.Linq.JToken"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/Newtonsoft.Json.Linq.JToken"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success"
          }
        }
      },
      "put": {
        "tags": [
          "ProfileDataExport"
        ],
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/Newtonsoft.Json.Linq.JToken"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Newtonsoft.Json.Linq.JToken"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/Newtonsoft.Json.Linq.JToken"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/Newtonsoft.Json.Linq.JToken"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success"
          }
        }
      }
    },
    "/{clientId}/ProfileDataExport/SegmentPermissions/{segmentLink}": {
      "get": {
        "tags": [
          "ProfileDataExport"
        ],
        "summary": "This method allows you to retrieve a Segment's specific (discrete) permissions",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "segmentLink",
            "in": "path",
            "description": "The unique id of the Segment",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success"
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      },
      "post": {
        "tags": [
          "ProfileDataExport"
        ],
        "summary": "This method allows you to create a Segment's specific (discrete) permissions",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "segmentLink",
            "in": "path",
            "description": "The unique id of the Segment",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "requestBody": {
          "description": "The Segment permissions content: please see sample(s)",
          "content": {
            "application/json-patch+json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.ProfilesSegmentPermission"
                }
              }
            },
            "application/json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.ProfilesSegmentPermission"
                }
              }
            },
            "text/json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.ProfilesSegmentPermission"
                }
              }
            },
            "application/*+json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.ProfilesSegmentPermission"
                }
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Created",
            "content": {
              "text/plain": {
                "schema": { }
              },
              "application/json": {
                "schema": { }
              },
              "text/json": {
                "schema": { }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      },
      "put": {
        "tags": [
          "ProfileDataExport"
        ],
        "summary": "This method allows you to update a Segment's specific (discrete) permissions",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "segmentLink",
            "in": "path",
            "description": "The unique id of the Segment",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "requestBody": {
          "description": "The Segment permissions content: please see sample(s)",
          "content": {
            "application/json-patch+json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.ProfilesSegmentPermission"
                }
              }
            },
            "application/json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.ProfilesSegmentPermission"
                }
              }
            },
            "text/json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.ProfilesSegmentPermission"
                }
              }
            },
            "application/*+json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.ProfilesSegmentPermission"
                }
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Created",
            "content": {
              "text/plain": {
                "schema": { }
              },
              "application/json": {
                "schema": { }
              },
              "text/json": {
                "schema": { }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/{clientId}/DataExport/Segment/{segmentName}": {
      "delete": {
        "tags": [
          "ProfileDataExport"
        ],
        "summary": "This method allows you to delete a Segment",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "segmentName",
            "in": "path",
            "description": "The Segment name",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "No Content"
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/{clientId}/ProfileDataExport/SegmentGroup/{segmentGroupLink}": {
      "get": {
        "tags": [
          "ProfileDataExport"
        ],
        "summary": "This method allows you to retrieve a Segment Group by it's id.",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "segmentGroupLink",
            "in": "path",
            "description": "The unique id of the Segment Group",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success"
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/{clientId}/ProfileDataExport/SegmentGroup": {
      "post": {
        "tags": [
          "ProfileDataExport"
        ],
        "summary": "This method allows you to create a new Segment Group",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "description": "The Segment Group content: please see sample(s)",
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/Newtonsoft.Json.Linq.JToken"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Newtonsoft.Json.Linq.JToken"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/Newtonsoft.Json.Linq.JToken"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/Newtonsoft.Json.Linq.JToken"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Created",
            "content": {
              "text/plain": {
                "schema": { }
              },
              "application/json": {
                "schema": { }
              },
              "text/json": {
                "schema": { }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      },
      "put": {
        "tags": [
          "ProfileDataExport"
        ],
        "summary": "This method allows you to update an existing Segment Group",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "description": "The Segment Group content: please see sample(s)",
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/Newtonsoft.Json.Linq.JToken"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Newtonsoft.Json.Linq.JToken"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/Newtonsoft.Json.Linq.JToken"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/Newtonsoft.Json.Linq.JToken"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success"
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/{clientId}/ProfileDataExport/SegmentGroupPermissions/{segmentGroupLink}": {
      "get": {
        "tags": [
          "ProfileDataExport"
        ],
        "summary": "This method allows you to retrieve a Segment Group's specific (discrete) permissions",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "segmentGroupLink",
            "in": "path",
            "description": "The unique id of the Segment Group",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Profiles.REST.Core.Models.ProfilesSegmentGroupPermission"
                  }
                }
              },
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Profiles.REST.Core.Models.ProfilesSegmentGroupPermission"
                  }
                }
              },
              "text/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Profiles.REST.Core.Models.ProfilesSegmentGroupPermission"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      },
      "post": {
        "tags": [
          "ProfileDataExport"
        ],
        "summary": "This method allows you to create a Segment Group's specific (discrete) permissions",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "segmentGroupLink",
            "in": "path",
            "description": "The unique id of the Segment",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "requestBody": {
          "description": "The Segment Group permissions content: please see sample(s)",
          "content": {
            "application/json-patch+json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.ProfilesSegmentGroupPermission"
                }
              }
            },
            "application/json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.ProfilesSegmentGroupPermission"
                }
              }
            },
            "text/json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.ProfilesSegmentGroupPermission"
                }
              }
            },
            "application/*+json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.ProfilesSegmentGroupPermission"
                }
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Created",
            "content": {
              "text/plain": {
                "schema": { }
              },
              "application/json": {
                "schema": { }
              },
              "text/json": {
                "schema": { }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      },
      "put": {
        "tags": [
          "ProfileDataExport"
        ],
        "summary": "This method allows you to update a Segment Group's specific (discrete) permissions",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "segmentGroupLink",
            "in": "path",
            "description": "The unique id of the Segment",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "requestBody": {
          "description": "The Segment Group permissions content: please see sample(s)",
          "content": {
            "application/json-patch+json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.ProfilesSegmentGroupPermission"
                }
              }
            },
            "application/json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.ProfilesSegmentGroupPermission"
                }
              }
            },
            "text/json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.ProfilesSegmentGroupPermission"
                }
              }
            },
            "application/*+json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.ProfilesSegmentGroupPermission"
                }
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Created",
            "content": {
              "text/plain": {
                "schema": { }
              },
              "application/json": {
                "schema": { }
              },
              "text/json": {
                "schema": { }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/{clientId}/DataExport/SegmentGroup/{segmentGroupName}": {
      "delete": {
        "tags": [
          "ProfileDataExport"
        ],
        "summary": "This method allows you to delete a Segment Group",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "segmentGroupName",
            "in": "path",
            "description": "The Segment Group name",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "No Content"
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/{clientId}/ProfilesExportSchedule/createSchedule": {
      "post": {
        "tags": [
          "ProfilesExportSchedule"
        ],
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "segmentGroupLink",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success"
          }
        }
      }
    },
    "/{clientId}/ProfilesExportSchedule/cloneSchedule": {
      "post": {
        "tags": [
          "ProfilesExportSchedule"
        ],
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "scheduleLink",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success"
          }
        }
      }
    },
    "/{clientId}/ProfilesExportSchedule/getSchedule/{scheduleLink}": {
      "get": {
        "tags": [
          "ProfilesExportSchedule"
        ],
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "scheduleLink",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success"
          }
        }
      }
    },
    "/{clientId}/ProfilesExportSchedule/isScheduleNameUsed/{scheduleLink}": {
      "post": {
        "tags": [
          "ProfilesExportSchedule"
        ],
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "scheduleLink",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success"
          }
        }
      }
    },
    "/{clientId}/ProfilesExportSchedule/isSFTPFolderNameUsed/{scheduleLink}": {
      "post": {
        "tags": [
          "ProfilesExportSchedule"
        ],
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "scheduleLink",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success"
          }
        }
      }
    },
    "/{clientId}/ProfilesExportSchedule/saveSchedule/{scheduleLink}": {
      "put": {
        "tags": [
          "ProfilesExportSchedule"
        ],
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "scheduleLink",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success"
          }
        }
      }
    },
    "/{clientId}/ProfilesExportSchedule/publishSchedule/{scheduleLink}": {
      "put": {
        "tags": [
          "ProfilesExportSchedule"
        ],
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "scheduleLink",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success"
          }
        }
      }
    },
    "/{clientId}/ProfilesExportSchedule/testPublishSchedule/{scheduleLink}": {
      "put": {
        "tags": [
          "ProfilesExportSchedule"
        ],
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "scheduleLink",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success"
          }
        }
      }
    },
    "/{clientId}/ProfilesExportSchedule/deactivateSchedule/{scheduleLink}": {
      "put": {
        "tags": [
          "ProfilesExportSchedule"
        ],
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "scheduleLink",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success"
          }
        }
      }
    },
    "/{clientId}/ProfilesExportSchedule/activateSchedule/{scheduleLink}": {
      "put": {
        "tags": [
          "ProfilesExportSchedule"
        ],
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "scheduleLink",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success"
          }
        }
      }
    },
    "/{clientId}/ProfilesExportSchedule/RunScheduleOnDemand": {
      "post": {
        "tags": [
          "ProfilesExportSchedule"
        ],
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "scheduleLink",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "catchupType",
            "in": "query",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success"
          }
        }
      }
    },
    "/{clientId}/ProfilesExportSchedule/getSchedules/{personLink}": {
      "get": {
        "tags": [
          "ProfilesExportSchedule"
        ],
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "personLink",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success"
          }
        }
      }
    },
    "/{clientId}/ProfilesExportSchedule/getSchedules/{personLink}/{segmentGroupLink}": {
      "get": {
        "tags": [
          "ProfilesExportSchedule"
        ],
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "personLink",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "segmentGroupLink",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success"
          }
        }
      }
    },
    "/{clientId}/ProfilesExportSchedule/getScheduleRunHistory/{scheduleLink}": {
      "get": {
        "tags": [
          "ProfilesExportSchedule"
        ],
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "scheduleLink",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success"
          }
        }
      }
    },
    "/{clientId}/ProfilesExportSchedule/getDownloadFilePath": {
      "post": {
        "tags": [
          "ProfilesExportSchedule"
        ],
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/ProfileServices.REST.Utility.Models.GetDownloadFilePathRequestModel"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ProfileServices.REST.Utility.Models.GetDownloadFilePathRequestModel"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/ProfileServices.REST.Utility.Models.GetDownloadFilePathRequestModel"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/ProfileServices.REST.Utility.Models.GetDownloadFilePathRequestModel"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success"
          }
        }
      }
    },
    "/{clientId}/ProfilesExportSchedule/getOutputFileDetails/{scheduleLink}/{versionNumber}/{outputFormat}/{orderNumber}": {
      "get": {
        "tags": [
          "ProfilesExportSchedule"
        ],
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "scheduleLink",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "versionNumber",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "outputFormat",
            "in": "path",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/ProfileServices.REST.Utility.Models.ProfileExportSchedule.OutputFormat"
            }
          },
          {
            "name": "orderNumber",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success"
          }
        }
      }
    },
    "/{clientId}/ProfilesExportSchedule/deleteOutputFileDetails/{scheduleLink}/{versionNumber}/{outputFormat}/{orderNumber}": {
      "delete": {
        "tags": [
          "ProfilesExportSchedule"
        ],
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "scheduleLink",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "versionNumber",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "outputFormat",
            "in": "path",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/ProfileServices.REST.Utility.Models.ProfileExportSchedule.OutputFormat"
            }
          },
          {
            "name": "orderNumber",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success"
          }
        }
      }
    },
    "/{clientId}/ProfilesExportSchedule/updateOutputFileDetails/{scheduleLink}/{versionNumber}": {
      "put": {
        "tags": [
          "ProfilesExportSchedule"
        ],
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "scheduleLink",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "versionNumber",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success"
          }
        }
      }
    },
    "/{clientId}/ProfilesExportSchedule/addOutputFileDetails/{scheduleLink}/{versionNumber}": {
      "post": {
        "tags": [
          "ProfilesExportSchedule"
        ],
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "scheduleLink",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "versionNumber",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success"
          }
        }
      }
    },
    "/{clientId}/ProfilesExportSchedule/refreshOutputFields/{scheduleLink}": {
      "post": {
        "tags": [
          "ProfilesExportSchedule"
        ],
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "scheduleLink",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success"
          }
        }
      }
    },
    "/{clientId}/ProfilesExportSchedule/getSimilarOutputFieldIds/{scheduleLink}/{outputFormat}/{columnId}": {
      "get": {
        "tags": [
          "ProfilesExportSchedule"
        ],
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "scheduleLink",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "outputFormat",
            "in": "path",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/ProfileServices.REST.Utility.Models.ProfileExportSchedule.OutputFormat"
            }
          },
          {
            "name": "columnId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success"
          }
        }
      }
    },
    "/{clientId}/ProfilesExportSchedule/deleteSchedule/{scheduleLink}": {
      "delete": {
        "tags": [
          "ProfilesExportSchedule"
        ],
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "scheduleLink",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success"
          }
        }
      }
    },
    "/{clientId}/ProfilesExportSegmentGroups": {
      "get": {
        "tags": [
          "ProfilesExportSegmentGroups"
        ],
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "segmentGroupName",
            "in": "query",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.ProfileExportSegmentGroupsResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.ProfileExportSegmentGroupsResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.ProfileExportSegmentGroupsResult"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/{clientId}/ProfilesExportSegments": {
      "get": {
        "tags": [
          "ProfilesExportSegments"
        ],
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "segmentName",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "includeDeletedProfileSegments",
            "in": "query",
            "schema": {
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.ProfileExportSegmentsResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.ProfileExportSegmentsResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.ProfileExportSegmentsResult"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/{clientId}/ProfilesExportSegments/Filtered": {
      "get": {
        "tags": [
          "ProfilesExportSegments"
        ],
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "typeFilter",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "segmentName",
            "in": "query",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.ProfileExportSegmentsResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.ProfileExportSegmentsResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.ProfileExportSegmentsResult"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/{clientId}/ProgramGroup": {
      "get": {
        "tags": [
          "ProgramGroup"
        ],
        "summary": "Retrieve all Program Groups and only return text tags for the specified locale.",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "Your required clientId used to access the WebAPI. A 404 is returned if this value is invalid.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "locale",
            "in": "query",
            "description": "A valid locale associated with the program group, in format.  Ex: \"en\", \"en-us\", \"en-uk\", \"fr-ca\".  A 400 is returned if the locale is invalid.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Codebase.Results.ProgramGroupResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Codebase.Results.ProgramGroupResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Codebase.Results.ProgramGroupResult"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/{clientId}/ProgramGroup/{programGroupId}": {
      "get": {
        "tags": [
          "ProgramGroup"
        ],
        "summary": "Retrieve a Program Group and only return text tags for the specified locale.",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "Your required clientId used to access the WebAPI. A 404 is returned if this value is invalid.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "programGroupId",
            "in": "path",
            "description": "The id of an active program group associated with your account. A 404 is returned if this value is invalid.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "locale",
            "in": "query",
            "description": "A valid locale associated with the program group, in format.  Ex: \"en\", \"en-us\", \"en-uk\", \"fr-ca\" . A 400 is returned if the locale is invalid.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Codebase.Results.ProgramGroupResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Codebase.Results.ProgramGroupResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Codebase.Results.ProgramGroupResult"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/{clientId}/ProgramGroup/IncludeMatching": {
      "get": {
        "tags": [
          "ProgramGroup"
        ],
        "summary": "Retrieve Program Groups and associated Nested Program Groups, Programs, and Filters that match on specified custom property search criteria. This call will only return text tags for the specified locale.",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "Your required clientId used to access the WebAPI. A 404 is returned if this value is invalid.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "locale",
            "in": "query",
            "description": "An optional valid LocaleId to request a specific language parameter.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Codebase.Results.ProgramGroupResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Codebase.Results.ProgramGroupResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Codebase.Results.ProgramGroupResult"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/{clientId}/ProgramGroup/IncludeAll": {
      "get": {
        "tags": [
          "ProgramGroup"
        ],
        "summary": "Retrieve Program Groups that match on specified custom property search criteria and only return text tags for the specified locale. All Programs, Filters and Nested Program Groups within the Program Groups will be returned.",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "Your required clientId used to access the WebAPI. A 404 is returned if this value is invalid.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "locale",
            "in": "query",
            "description": "An optional valid LocaleId to request a specific language parameter.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Codebase.Results.ProgramGroupResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Codebase.Results.ProgramGroupResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Codebase.Results.ProgramGroupResult"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/{clientId}/Programs": {
      "get": {
        "tags": [
          "Programs"
        ],
        "summary": "Retrieve all Programs which only return text tags for the specified locale.",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "Your required clientId used to access the WebAPI.  A 404 is returned if this value is invalid.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "locale",
            "in": "query",
            "description": "A valid locale associated with the program, in format.  Ex: \"en\", \"en-us\", \"en-uk\", \"fr-ca\".  A 400 is returned if the locale is invalid.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Codebase.Results.ProgramResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Codebase.Results.ProgramResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Codebase.Results.ProgramResult"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/{clientId}/Programs/{programId}": {
      "get": {
        "tags": [
          "Programs"
        ],
        "summary": "Retrieve a specific Program and only return text tags for the specified locale.",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "Your required clientId used to access the WebAPI.  A 404 is returned if this value is invalid.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "programId",
            "in": "path",
            "description": "A programId that is associated with your clientId.  A 404 is returned if this value is invalid.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "locale",
            "in": "query",
            "description": "A valid locale associated with the programId.  A 400 is returned if the locale is invalid.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "200": {
            "description": "Success",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Codebase.Results.ProgramResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Codebase.Results.ProgramResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Codebase.Results.ProgramResult"
                }
              }
            }
          }
        }
      }
    },
    "/{clientId}/Programs/{programId}/{programGroupId}": {
      "get": {
        "tags": [
          "Programs"
        ],
        "summary": "Retrieve a specific Program from a Program Group and only return text tags for the specified locale. This call will return the default preference values for the Filters as defined in the Program Group.",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "Your required clientId used to access the WebAPI.  A 404 is returned if this value is invalid.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "programGroupId",
            "in": "path",
            "description": "A programGroupId that is associated with your clientId.  A 404 is returned if this value is invalid.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "programId",
            "in": "path",
            "description": "A programId that is associated with the provided programGroupId and clientId.  A 404 is returned if this value is invalid.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "locale",
            "in": "query",
            "description": "A valid locale associated with the programId.  A 400 is returned if the locale is invalid.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Codebase.Results.ProgramResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Codebase.Results.ProgramResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Codebase.Results.ProgramResult"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/{clientId}/Programs/ProgramTypes/{programTypeId}": {
      "get": {
        "tags": [
          "Programs"
        ],
        "summary": "Retrieve all Programs that match a specified Program Type and only return text tags for the specified locale.",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "Your required clientId used to access the WebAPI.  A 404 is returned if this value is invalid.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "programTypeId",
            "in": "path",
            "description": "A valid programTypeId that is associated with your clientId.  A 404 is returned if this value is invalid.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "locale",
            "in": "query",
            "description": "A valid locale associated with the programId.  A 400 is returned if the locale is invalid.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Codebase.Results.ProgramResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Codebase.Results.ProgramResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Codebase.Results.ProgramResult"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/{clientId}/Programs/IncludeMatching": {
      "get": {
        "tags": [
          "Programs"
        ],
        "summary": "Retrieve Programs and associated Filters that match on the specified custom property search criteria and only return text tags for the specified locale.",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "Your required clientId used to access the WebAPI. A 404 is returned if this value is invalid.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "locale",
            "in": "query",
            "description": "An optional valid LocaleId to request a specific language parameter.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Codebase.Results.ProgramResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Codebase.Results.ProgramResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Codebase.Results.ProgramResult"
                }
              }
            }
          }
        }
      }
    },
    "/{clientId}/Programs/IncludeAll": {
      "get": {
        "tags": [
          "Programs"
        ],
        "summary": "Retrieve Programs that match on the specified custom property search criteria and only return text tags for the specified locale. All Filters within the Programs will be returned.",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "Your required clientId used to access the WebAPI. A 404 is returned if this value is invalid.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "locale",
            "in": "query",
            "description": "An optional valid LocaleId to request a specific language parameter.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Codebase.Results.ProgramResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Codebase.Results.ProgramResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Codebase.Results.ProgramResult"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/{clientId}/Propagation/Preference": {
      "post": {
        "tags": [
          "Propagation"
        ],
        "operationId": "PostPropagationPreference",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.PreferenceRelationships"
                }
              }
            },
            "application/json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.PreferenceRelationships"
                }
              }
            },
            "text/json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.PreferenceRelationships"
                }
              }
            },
            "application/*+json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.PreferenceRelationships"
                }
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Created",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.PreferenceRelationships"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.PreferenceRelationships"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.PreferenceRelationships"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      },
      "get": {
        "tags": [
          "Propagation"
        ],
        "operationId": "GetPropagationPreference",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "RelationshipId",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "ParentFilter",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "IsActive",
            "in": "query",
            "schema": {
              "type": "boolean",
              "default": true
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.PreferenceRelationships"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.PreferenceRelationships"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.PreferenceRelationships"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      },
      "put": {
        "tags": [
          "Propagation"
        ],
        "operationId": "PutPropagationPreference",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.PreferenceRelationships"
                }
              }
            },
            "application/json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.PreferenceRelationships"
                }
              }
            },
            "text/json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.PreferenceRelationships"
                }
              }
            },
            "application/*+json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.PreferenceRelationships"
                }
              }
            }
          }
        },
        "responses": {
          "202": {
            "description": "Accepted",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.PreferenceRelationships"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.PreferenceRelationships"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Models.PreferenceRelationships"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/{clientId}/Users": {
      "get": {
        "tags": [
          "User"
        ],
        "summary": "Retrieve all Users.",
        "operationId": "GetUsers",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserDetail"
                  }
                }
              },
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserDetail"
                  }
                }
              },
              "text/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserDetail"
                  }
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/{clientId}/User": {
      "post": {
        "tags": [
          "User"
        ],
        "summary": "Create new user for your organization",
        "description": "Sample request:\r\n\r\n    {\r\n      \"UserName\": \"!john@doe123!\",\r\n      \"FirstName\": \"John\",\r\n      \"LastName\": \"Doe\",\r\n      \"Email\": \"johndoe@mail.com\",\r\n      \"UserGroups\": [\r\n        {\r\n          \"UserGroupID\": \"CustomerSupport\"\r\n        }\r\n      ],\r\n      \"SourceGroupID\": \"CS\",\r\n      \"DefaultLandingPage\": \"Dashboard\"\r\n    }\r\n\r\nSample response:\r\n            \r\n    {\r\n        \"UserId\": 123456,\r\n        \"SubmittedTime\": \"2025-01-15 10:15:15\"\r\n    }",
        "operationId": "PostUser",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences Account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "description": "UserDetail",
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserDetail"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserDetail"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserDetail"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserDetail"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Created",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Http.HttpResults.Ok"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Http.HttpResults.Ok"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Http.HttpResults.Ok"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    },
    "/{clientId}/User/{username}": {
      "put": {
        "tags": [
          "User"
        ],
        "summary": "Update existing user for your organization",
        "description": "Sample request:\r\n\r\n    {\r\n      \"UserName\": \"!john@doe123!\",\r\n      \"FirstName\": \"John\",\r\n      \"LastName\": \"Doe\",\r\n      \"Email\": \"johndoe@mail.com\",\r\n      \"UserGroups\": [\r\n        {\r\n          \"UserGroupID\": \"CustomerSupport\"\r\n        }\r\n      ],\r\n      \"SourceGroupID\": \"CS\",\r\n      \"DefaultLandingPage\": \"Dashboard\"\r\n    }",
        "operationId": "PostUpdateUser",
        "parameters": [
          {
            "name": "clientId",
            "in": "path",
            "description": "This is your organization’s MyPreferences Account Id.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "username",
            "in": "path",
            "description": "Exising user in your organization",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "description": "UserDetail",
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserDetail"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserDetail"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserDetail"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/Profiles.REST.Core.Models.UserDetail"
              }
            }
          }
        },
        "responses": {
          "202": {
            "description": "Accepted"
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Profiles.REST.Core.Controllers.Error"
                }
              }
            }
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "Microsoft.AspNetCore.Http.HttpResults.Ok": {
        "type": "object",
        "properties": {
          "StatusCode": {
            "type": "integer",
            "format": "int32",
            "readOnly": true
          }
        },
        "additionalProperties": false
      },
      "Microsoft.AspNetCore.JsonPatch.Operations.Operation": {
        "type": "object",
        "properties": {
          "OperationType": {
            "$ref": "#/components/schemas/Microsoft.AspNetCore.JsonPatch.Operations.OperationType"
          },
          "path": {
            "type": "string",
            "nullable": true
          },
          "op": {
            "type": "string",
            "nullable": true
          },
          "from": {
            "type": "string",
            "nullable": true
          },
          "value": {
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Microsoft.AspNetCore.JsonPatch.Operations.OperationType": {
        "enum": [
          0,
          1,
          2,
          3,
          4,
          5,
          6
        ],
        "type": "integer",
        "format": "int32"
      },
      "Newtonsoft.Json.Linq.JToken": {
        "type": "array",
        "items": {
          "$ref": "#/components/schemas/Newtonsoft.Json.Linq.JToken"
        }
      },
      "PossibleNow.PNEnterprise.Domain2.Core.Models.LocalizedField": {
        "required": [
          "Locale",
          "Name"
        ],
        "type": "object",
        "properties": {
          "Locale": {
            "maxLength": 15,
            "minLength": 1,
            "type": "string"
          },
          "Name": {
            "maxLength": 50,
            "minLength": 1,
            "type": "string"
          },
          "Description": {
            "maxLength": 255,
            "type": "string",
            "default": "",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "PossibleNow.Profiles.DataExportCore.Classes.AsyncApiDataExportSegmentResult": {
        "type": "object",
        "properties": {
          "Count": {
            "type": "integer",
            "format": "int32"
          },
          "HasMore": {
            "type": "boolean"
          },
          "Limit": {
            "type": "integer",
            "format": "int32"
          },
          "Offset": {
            "type": "integer",
            "format": "int32"
          },
          "TotalResults": {
            "type": "integer",
            "format": "int32"
          },
          "UserProfilePreferences": {
            "type": "array",
            "items": {
              "type": "object",
              "additionalProperties": { }
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "PossibleNow.Profiles.DataExportCore.Classes.AsyncApiDataExportStatusResult": {
        "type": "object",
        "properties": {
          "AccessToken": {
            "type": "integer",
            "format": "int32"
          },
          "Status": {
            "type": "string",
            "nullable": true
          },
          "RowCount": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "ByteCount": {
            "type": "integer",
            "format": "int64",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "ProfileServices.REST.Utility.Models.GetDownloadFilePathRequestModel": {
        "type": "object",
        "properties": {
          "DownloadFileLink": {
            "type": "integer",
            "format": "int32"
          },
          "ScheduleExportRunHistoryLink": {
            "type": "integer",
            "format": "int32"
          }
        },
        "additionalProperties": false
      },
      "ProfileServices.REST.Utility.Models.ProfileExportSchedule.OutputFormat": {
        "enum": [
          0,
          1
        ],
        "type": "integer",
        "format": "int32"
      },
      "Profiles.EventServices.EventServicesCore.Classes.EditInfo": {
        "required": [
          "CreateDate",
          "CreatedBy",
          "ModifiedBy",
          "ModifiedDate"
        ],
        "type": "object",
        "properties": {
          "CreateDate": {
            "type": "string",
            "format": "date-time"
          },
          "CreatedBy": {
            "type": "string"
          },
          "ModifiedDate": {
            "type": "string",
            "format": "date-time"
          },
          "ModifiedBy": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "Profiles.EventServices.EventServicesCore.Classes.EventAlertSettingsDistributionListDetailsResult": {
        "type": "object",
        "properties": {
          "EventAlertSettingsDistributionListId": {
            "type": "integer",
            "format": "int32"
          },
          "ClientLink": {
            "type": "integer",
            "format": "int32"
          },
          "AppVersion": {
            "type": "integer",
            "format": "int64"
          },
          "DistributionListLink": {
            "type": "integer",
            "format": "int32"
          },
          "AlertsEnabled": {
            "type": "boolean"
          },
          "AlertFrequencyMin": {
            "type": "integer",
            "format": "int32"
          },
          "AlertThresholdMin": {
            "type": "integer",
            "format": "int32"
          },
          "AlertFrequencyMax": {
            "type": "integer",
            "format": "int32"
          },
          "AlertThresholdMax": {
            "type": "integer",
            "format": "int32"
          },
          "EventAlertSettingsDistributionListSubscriptionId": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "EventSubscriptionId": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "EventSubscriptionName": {
            "type": "string",
            "nullable": true
          },
          "SubscriptionAlertsEnabled": {
            "type": "boolean",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Profiles.EventServices.EventServicesCore.Classes.Settings": {
        "type": "object",
        "properties": {
          "MaxConcurrentRequests": {
            "maximum": 5000,
            "minimum": 50,
            "type": "integer",
            "format": "int32"
          },
          "Duration": {
            "maximum": 300,
            "minimum": 1,
            "type": "integer",
            "format": "int32"
          }
        },
        "additionalProperties": false
      },
      "Profiles.EventServices.EventServicesCore.Classes.WebhookSettings": {
        "type": "object",
        "properties": {
          "Settings": {
            "$ref": "#/components/schemas/Profiles.EventServices.EventServicesCore.Classes.Settings"
          },
          "Edited": {
            "$ref": "#/components/schemas/Profiles.EventServices.EventServicesCore.Classes.EditInfo"
          }
        },
        "additionalProperties": false
      },
      "Profiles.EventServices.EventServicesCore.Classes.WebhookSubscription": {
        "required": [
          "AlternateIdType",
          "Name",
          "Subscriptions",
          "Url"
        ],
        "type": "object",
        "properties": {
          "Id": {
            "type": "integer",
            "format": "int32"
          },
          "Name": {
            "type": "string"
          },
          "Description": {
            "type": "string",
            "nullable": true
          },
          "LocaleId": {
            "type": "string",
            "nullable": true
          },
          "Url": {
            "type": "string"
          },
          "Subscriptions": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.EventServices.EventServicesCore.Interfaces.IWebhookSubscription"
            }
          },
          "State": {
            "$ref": "#/components/schemas/Profiles.EventServices.EventServicesCore.Classes.WebhookSubscriptionState"
          },
          "IsMinimized": {
            "type": "boolean"
          },
          "IsActive": {
            "type": "boolean"
          },
          "AlternateIdType": {
            "type": "string"
          },
          "CatchUpOnResume": {
            "type": "boolean",
            "nullable": true
          },
          "RetryDuration": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Profiles.EventServices.EventServicesCore.Classes.WebhookSubscriptionState": {
        "enum": [
          0,
          1,
          2
        ],
        "type": "integer",
        "format": "int32"
      },
      "Profiles.EventServices.EventServicesCore.Interfaces.IWebhookSubscription": {
        "type": "object",
        "additionalProperties": false
      },
      "Profiles.REST.Core.Codebase.GlobalPN+CheckboxStates": {
        "enum": [
          0,
          1
        ],
        "type": "integer",
        "format": "int32"
      },
      "Profiles.REST.Core.Codebase.GlobalPN+ConsentStatuses": {
        "enum": [
          1,
          2,
          3,
          4
        ],
        "type": "integer",
        "format": "int32"
      },
      "Profiles.REST.Core.Codebase.GlobalPN+CustomFieldDisplayTypes": {
        "enum": [
          1,
          2,
          3,
          4,
          5,
          6,
          7
        ],
        "type": "integer",
        "format": "int32"
      },
      "Profiles.REST.Core.Codebase.GlobalPN+CustomFieldOperators": {
        "enum": [
          1,
          2,
          3
        ],
        "type": "integer",
        "format": "int32"
      },
      "Profiles.REST.Core.Codebase.GlobalPN+PreferenceTypes": {
        "enum": [
          1,
          2
        ],
        "type": "integer",
        "format": "int32"
      },
      "Profiles.REST.Core.Codebase.GlobalPN+UpdateRules": {
        "enum": [
          1,
          2,
          4,
          5
        ],
        "type": "integer",
        "description": "Rules for updating values on Custom Fields. Fields configured with a property of AllowBlanks = FALSE require a value regardless of the update rule.\r\nAPI responses will not include errors for update rule violations.",
        "format": "int32"
      },
      "Profiles.REST.Core.Codebase.Results.FilterResult": {
        "type": "object",
        "properties": {
          "Filters": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.PNEModels.ChannelHeader"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.Codebase.Results.ProgramGroupResult": {
        "type": "object",
        "properties": {
          "ProgramGroup": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.PNEModels.ProgramGroup"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.Codebase.Results.ProgramResult": {
        "type": "object",
        "properties": {
          "Programs": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.PNEModels.Program"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.Controllers.Error": {
        "type": "object",
        "properties": {
          "Message": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.Controllers.EventResult": {
        "type": "object",
        "properties": {
          "EventId": {
            "type": "string",
            "nullable": true
          },
          "EventType": {
            "type": "string",
            "nullable": true
          },
          "Subject": {
            "type": "string",
            "nullable": true
          },
          "Entity": {
            "type": "string",
            "nullable": true
          },
          "SubscriptionId": {
            "type": "integer",
            "format": "int32"
          },
          "Name": {
            "type": "string",
            "nullable": true
          },
          "Description": {
            "type": "string",
            "nullable": true
          },
          "ProfileId": {
            "type": "integer",
            "format": "int32"
          },
          "Data": {
            "nullable": true
          },
          "PreviousData": {
            "nullable": true
          },
          "OriginalEventTime": {
            "type": "string",
            "nullable": true
          },
          "EventTime": {
            "type": "string",
            "nullable": true
          },
          "CreateDate": {
            "type": "string",
            "nullable": true
          },
          "CreatedBy": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.Models.AcceptedResponse": {
        "type": "object",
        "properties": {
          "AlternateId": {
            "type": "string",
            "default": "",
            "nullable": true
          },
          "AlternateIdType": {
            "type": "string",
            "default": "",
            "nullable": true
          },
          "ProfileId": {
            "type": "integer",
            "format": "int32"
          },
          "UpdateStatus": {
            "type": "string",
            "nullable": true
          },
          "SubmittedUtcTime": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.Models.AddressPreference": {
        "required": [
          "Address1",
          "City",
          "PostalCode",
          "StateProvince"
        ],
        "type": "object",
        "properties": {
          "Address1": {
            "maxLength": 125,
            "minLength": 1,
            "type": "string",
            "description": "Address1 associated with the Profile"
          },
          "Address2": {
            "maxLength": 125,
            "type": "string",
            "description": "Address2 associated with the Profile",
            "default": "",
            "nullable": true
          },
          "City": {
            "maxLength": 50,
            "minLength": 1,
            "type": "string",
            "description": "City associated with the Profile"
          },
          "StateProvince": {
            "maxLength": 50,
            "minLength": 2,
            "type": "string",
            "description": "State associated with the Profile"
          },
          "CountryCode_Numeric": {
            "maxLength": 3,
            "type": "string",
            "description": "Numeric Country Code associated with the Profile",
            "default": "",
            "nullable": true
          },
          "CountryCode_Alpha2": {
            "maxLength": 2,
            "type": "string",
            "description": "Alpha2 Country Code associated with the Profile",
            "default": "",
            "nullable": true
          },
          "CountryCode_Alpha3": {
            "maxLength": 3,
            "type": "string",
            "description": "Alpha3 Country Code associated with the Profile",
            "default": "",
            "nullable": true
          },
          "PostalCode": {
            "maxLength": 15,
            "minLength": 1,
            "type": "string",
            "description": "Mailing Postal Code associated with the Profile"
          },
          "AddressType": {
            "maxLength": 100,
            "type": "string",
            "description": "Name of the Type to which the Address is associated",
            "nullable": true
          },
          "IsActive": {
            "type": "boolean",
            "description": "Defines whether the item is Active or Inactive."
          },
          "IsDefault": {
            "type": "boolean",
            "description": "Determines if it’s the default Address on the Profile. Only one Address can be set as default for each Profile.",
            "nullable": true
          },
          "Consents": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.CustomerConsent"
            },
            "nullable": true
          },
          "CassAddress1": {
            "type": "string",
            "description": "Standardized Address2 associated with the profile",
            "nullable": true
          },
          "CassAddress2": {
            "type": "string",
            "description": "Standardized Address2 associated with the profile",
            "nullable": true
          },
          "CassCity": {
            "type": "string",
            "description": "Standardized City associated with the profile",
            "nullable": true
          },
          "CassStateProvince": {
            "type": "string",
            "description": "Standardized StateProvince associated with the profile",
            "nullable": true
          },
          "CassPostalCode": {
            "type": "string",
            "description": "Standardized PostalCode associated with the profile",
            "nullable": true
          },
          "CassStatus": {
            "type": "string",
            "description": "Status code returned from the address standardization engine.\r\nY - The address was standardized\r\nN - The address was not standardized",
            "nullable": true
          },
          "Country": {
            "type": "string",
            "description": "Country associated with the Profile",
            "nullable": true
          },
          "Edited": {
            "$ref": "#/components/schemas/Profiles.REST.Core.Models.EditInfo"
          },
          "CountryTypeNbr": {
            "type": "integer",
            "format": "int32"
          },
          "IsModified": {
            "type": "boolean"
          },
          "CassStreetPreDirectional": {
            "type": "string",
            "nullable": true
          },
          "CassStreetNumber": {
            "type": "string",
            "nullable": true
          },
          "CassStreetName": {
            "type": "string",
            "nullable": true
          },
          "CassStreetSuffix": {
            "type": "string",
            "nullable": true
          },
          "CassStreetPostDirectional": {
            "type": "string",
            "nullable": true
          },
          "CassSuite": {
            "type": "string",
            "nullable": true
          },
          "CassZip": {
            "type": "string",
            "nullable": true
          },
          "CassZip4": {
            "type": "string",
            "nullable": true
          },
          "AddressTypeLink": {
            "type": "integer",
            "format": "int32"
          },
          "SysStartTime": {
            "type": "string",
            "format": "date-time"
          },
          "SysEndTime": {
            "type": "string",
            "format": "date-time"
          },
          "SendingToDB": {
            "type": "boolean"
          },
          "AddressPreferences": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.ProfilePreference"
            },
            "nullable": true
          },
          "MissingRequiredConsents": {
            "type": "boolean"
          },
          "IsHistoryEndPoint": {
            "type": "boolean"
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.Models.AddressTypeEntry": {
        "required": [
          "LocalizedFields",
          "TypeName"
        ],
        "type": "object",
        "properties": {
          "TypeName": {
            "maxLength": 100,
            "minLength": 1,
            "type": "string",
            "description": "The name given to the type."
          },
          "LocalizedFields": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/PossibleNow.PNEnterprise.Domain2.Core.Models.LocalizedField"
            },
            "description": "A collection of a locale specific name/value pair of Strings used to support localization"
          },
          "IsDefault": {
            "type": "boolean",
            "description": "Determines if it is the Default Type"
          },
          "IsActive": {
            "type": "boolean",
            "description": "Defines whether the item is Active or Inactive"
          },
          "TypeId": {
            "type": "integer",
            "description": "A read-only field that uniquely identifies the Type",
            "format": "int32"
          },
          "Edited": {
            "$ref": "#/components/schemas/Profiles.REST.Core.Models.EditInfo"
          },
          "RequiredContactConsents": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.RequiredContactConsent"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.Models.AddressTypeEntryList": {
        "type": "object",
        "properties": {
          "AddressTypes": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.AddressTypeEntry"
            },
            "description": "A collection of meta data describing type information for an Address that can be associated with a Profile",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.Models.AlternateIdEntry": {
        "required": [
          "AlternateId"
        ],
        "type": "object",
        "properties": {
          "AlternateIdType": {
            "maxLength": 100,
            "type": "string",
            "description": "Name of the AlternateIdType to which the AlternateId can be associated.",
            "nullable": true
          },
          "AlternateId": {
            "maxLength": 512,
            "minLength": 1,
            "type": "string",
            "description": "An additional identifier on the profile. \r\n\r\nAlternateIds are additional Id’s that you can store with a profile.They are unique by type. \r\nYou cannot store preferences with an AlternateId.They can be passed as a queryString parameter to retrieve a profile."
          },
          "IsActive": {
            "type": "boolean",
            "description": "Defines whether the item is Active or Inactive."
          },
          "Edited": {
            "$ref": "#/components/schemas/Profiles.REST.Core.Models.EditInfo"
          },
          "SendingToDB": {
            "type": "boolean"
          },
          "AlternateIdTypeLink": {
            "type": "integer",
            "format": "int32"
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.Models.AlternateIdTypeEntry": {
        "required": [
          "LocalizedFields",
          "TypeName"
        ],
        "type": "object",
        "properties": {
          "TypeName": {
            "maxLength": 100,
            "minLength": 1,
            "type": "string",
            "description": "The name given to the type."
          },
          "LocalizedFields": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/PossibleNow.PNEnterprise.Domain2.Core.Models.LocalizedField"
            },
            "description": "A collection of a locale specific name/value pair of Strings used to support localization"
          },
          "IsDefault": {
            "type": "boolean",
            "description": "Determines if it is the Default Type"
          },
          "IsActive": {
            "type": "boolean",
            "description": "Defines whether the item is Active or Inactive"
          },
          "TypeId": {
            "type": "integer",
            "description": "A read-only field that uniquely identifies the Type",
            "format": "int32"
          },
          "Edited": {
            "$ref": "#/components/schemas/Profiles.REST.Core.Models.EditInfo"
          },
          "RequiredContactConsents": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.RequiredContactConsent"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.Models.AlternateIdTypeEntryList": {
        "type": "object",
        "properties": {
          "AlternateIdTypes": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.AlternateIdTypeEntry"
            },
            "description": "A collection of Additional unique identifiers that can be associated with a profile.\r\nFor example, customer identifiers from other applications such as Salesforce, Marketo or Facebook can be stored as AlternateIds.",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.Models.ArchiveAddressPreference": {
        "type": "object",
        "properties": {
          "Address1": {
            "type": "string",
            "description": "Address1 associated with the Profile address",
            "nullable": true
          },
          "Address2": {
            "type": "string",
            "description": "Address2 associated with the Profile address",
            "nullable": true
          },
          "City": {
            "type": "string",
            "description": "City associated with the Profile address",
            "nullable": true
          },
          "StateProvince": {
            "type": "string",
            "description": "State associated with the Profile address",
            "nullable": true
          },
          "CountryCode_Numeric": {
            "type": "string",
            "description": "Numeric Country Code associated with the Profile address",
            "nullable": true
          },
          "CountryCode_Alpha2": {
            "type": "string",
            "description": "Alpha2 Country Code associated with the Profile address",
            "nullable": true
          },
          "CountryCode_Alpha3": {
            "type": "string",
            "description": "Alpha3 Country Code associated with the Profile address",
            "nullable": true
          },
          "PostalCode": {
            "type": "string",
            "description": "Mailing Postal Code associated with the Profile address",
            "nullable": true
          },
          "AddressType": {
            "type": "string",
            "description": "Name of the Address Type to which the Address is associated.",
            "nullable": true
          },
          "FilterId": {
            "type": "string",
            "description": "Id of the Filter in which preference is stored.",
            "nullable": true
          },
          "Reason_Code": {
            "type": "string",
            "description": "Optional parameter that can be used to store the reason for deactivation.",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.Models.ArchiveEmailPreference": {
        "type": "object",
        "properties": {
          "EmailAddressType": {
            "type": "string",
            "description": "Name of the EmailType to which the EmailAddress is associated.",
            "nullable": true
          },
          "EmailAddress": {
            "type": "string",
            "description": "EmailAddress on the Profile for which you want to deactivate preferences.",
            "nullable": true
          },
          "FilterId": {
            "type": "string",
            "description": "Id of the Filter in which preference is stored.",
            "nullable": true
          },
          "Reason_Code": {
            "type": "string",
            "description": "Optional parameter that can be used to store the reason for deactivation.",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.Models.ArchivePhoneNumberPreference": {
        "type": "object",
        "properties": {
          "PhoneType": {
            "type": "string",
            "description": "Name of the Phone Type to which the PhoneNumber is associated.",
            "nullable": true
          },
          "PhoneNumber": {
            "type": "string",
            "description": "PhoneNumber on the Profile for which you want to deactivate preferences.",
            "nullable": true
          },
          "PhoneNumberNumeric": {
            "type": "integer",
            "description": "A read-only field that stores the numeric version of the PhoneNumber.",
            "format": "int64"
          },
          "FilterId": {
            "type": "string",
            "description": "Id of the Filter in which preference is stored.",
            "nullable": true
          },
          "Reason_Code": {
            "type": "string",
            "description": "Optional parameter that can be used to store the reason for deactivation.",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.Models.ArchivePreferences": {
        "type": "object",
        "properties": {
          "GlobalDeactivate": {
            "type": "boolean",
            "description": "If set to true, deactivates and archives all preferences associated with the Profile and all its contact elements."
          },
          "Reason_Code": {
            "type": "string",
            "description": "Optional parameter that can be used to store the reason for deactivation.",
            "nullable": true
          },
          "PhoneNumbers": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.ArchivePhoneNumberPreference"
            },
            "description": "A collection of phone preferences associated with the User Profile that you want to deactivate. \r\nAll deactivated phone preferences are archived.",
            "nullable": true
          },
          "Addresses": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.ArchiveAddressPreference"
            },
            "description": "A collection of mail preferences associated with the User Profile that you want to deactivate. \r\nAll deactivated address preferences are archived.",
            "nullable": true
          },
          "Emails": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.ArchiveEmailPreference"
            },
            "description": "A collection of email preferences associated with the User Profile that you want to deactivate. \r\nAll deactivated email preferences are archived.",
            "nullable": true
          },
          "ProfilePreferences": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.ArchiveProfilePreference"
            },
            "description": "A collection of preferences associated with the User Profile that you want to deactivate. \r\nAll deactivated profile preferences are archived.",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.Models.ArchiveProfilePreference": {
        "required": [
          "CustomerType"
        ],
        "type": "object",
        "properties": {
          "CustomerType": {
            "minLength": 1,
            "type": "string",
            "description": "Name of the CustomerType associated with the Profile"
          },
          "FilterId": {
            "type": "string",
            "description": "Id of the Filter in which preference is stored.",
            "nullable": true
          },
          "Reason_Code": {
            "type": "string",
            "description": "Optional parameter that can be used to store the reason for deactivation.",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.Models.AsyncToken": {
        "type": "object",
        "properties": {
          "AccessToken": {
            "type": "integer",
            "description": "Unique token used to check status and pull data for async calls",
            "format": "int32"
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.Models.Attribute": {
        "required": [
          "Key",
          "Value"
        ],
        "type": "object",
        "properties": {
          "Key": {
            "minLength": 1,
            "type": "string",
            "description": "The key to identify the preferece attribute."
          },
          "Value": {
            "minLength": 1,
            "type": "string",
            "description": "The value of the attribute"
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.Models.ConfigUserGroupIDOnly": {
        "required": [
          "UserGroupID"
        ],
        "type": "object",
        "properties": {
          "UserGroupID": {
            "minLength": 1,
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.Models.ConsentAssociation": {
        "required": [
          "ConsentType",
          "ConsentVersion"
        ],
        "type": "object",
        "properties": {
          "ConsentType": {
            "maxLength": 100,
            "minLength": 1,
            "type": "string",
            "description": "The TypeName of the consent"
          },
          "ConsentVersion": {
            "maxLength": 50,
            "minLength": 1,
            "type": "string",
            "description": "The version of the Consent"
          },
          "IsActive": {
            "type": "boolean",
            "description": "Defines whether the item is Active or Inactive."
          },
          "Locale": {
            "type": "string",
            "description": "Locale ID (en_US: English, United States, en_GB: English, Great Britain..)",
            "nullable": true
          },
          "ReasonCode": {
            "maxLength": 255,
            "type": "string",
            "description": "A value for tracking consent status changes",
            "nullable": true
          },
          "UpdatedVersionPending": {
            "type": "boolean"
          },
          "IsHistoryEndPoint": {
            "type": "boolean"
          },
          "SendingToDB": {
            "type": "boolean"
          },
          "ConsentTypeLink": {
            "type": "integer",
            "format": "int32"
          },
          "ConsentVersionLink": {
            "type": "integer",
            "format": "int32"
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.Models.ConsentHistory": {
        "type": "object",
        "properties": {
          "ProfileId": {
            "type": "integer",
            "description": "Id associated with the Profile",
            "format": "int32"
          },
          "IsActive": {
            "type": "boolean",
            "description": "Defines whether the item is Active or Inactive",
            "nullable": true
          },
          "Edited": {
            "$ref": "#/components/schemas/Profiles.REST.Core.Models.EditInfo"
          },
          "RegistrationConfirmed": {
            "type": "boolean",
            "description": "An optional field for clients to use at their discretion to accommodate scenarios in which customer profile verification is performed.",
            "nullable": true
          },
          "CustomerType": {
            "type": "string",
            "description": "An identifier used to classify a person by the type of customer. For example: Retail, Commercial, or Marketing",
            "nullable": true
          },
          "PreserveConsents": {
            "type": "boolean",
            "description": "Specifies whether to retain the contact element consents or deactivate them. \r\nTo retain the contact element consents, set the value as True. If set to False, the contact element consents will be deactivated. \r\nThis setting defaults to True, if not specified.",
            "nullable": true
          },
          "PreservePreferences": {
            "type": "boolean",
            "description": "Specifies whether to retain the preferences or deactivate them. \r\nTo retain the preferences, set the value as True. If set to False, the preferences will be deactivated. \r\nThis setting defaults to True, if not specified.",
            "nullable": true
          },
          "CustomerName": {
            "$ref": "#/components/schemas/Profiles.REST.Core.Models.CustomerName"
          },
          "DefaultLocale": {
            "type": "string",
            "description": "Default Locale for the profile.",
            "nullable": true
          },
          "UpdateStatus": {
            "type": "string",
            "description": "\"Complete\" if the record has been processed otherwise \"Pending Update\"",
            "nullable": true
          },
          "ReasonCode": {
            "maxLength": 255,
            "type": "string",
            "description": "An optional parameter that can be passed when deactivating a profile.",
            "nullable": true
          },
          "AlternateIds": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.AlternateIdEntry"
            },
            "description": "A collection of Additional unique identifiers that can be associated with a profile.\r\nFor example, customer identifiers from other applications such as Salesforce, Marketo or Facebook can be stored as AlternateIds.",
            "nullable": true
          },
          "Consents": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.CustomerConsent"
            },
            "description": "A collection of Custom Fields associated with the profile",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.Models.ConsentStatus": {
        "required": [
          "Name"
        ],
        "type": "object",
        "properties": {
          "Id": {
            "type": "integer",
            "description": "A read-only field that uniquely identifies the ConsentStatus",
            "format": "int32"
          },
          "Name": {
            "maxLength": 100,
            "minLength": 1,
            "type": "string",
            "description": "Name of the ConsentStatus"
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.Models.ConsentStatusList": {
        "type": "object",
        "properties": {
          "ConsentStatus": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.ConsentStatus"
            },
            "description": "A collection of Consent Statuses that can be associated with a Profile.\r\nSupported consent statuses are 1: Granted, 2: Denied, 3: Revoked, 4: NotSet.",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.Models.ConsentTypeEntry": {
        "required": [
          "TypeName",
          "Versions"
        ],
        "type": "object",
        "properties": {
          "TypeName": {
            "maxLength": 100,
            "minLength": 1,
            "type": "string",
            "description": "Name of the type"
          },
          "ChannelId": {
            "type": "string",
            "description": "The optional identifier of the Channel. \r\nPhone, Text/SMS, Email, and Mail are the channel ID values.",
            "default": "",
            "nullable": true
          },
          "IsActive": {
            "type": "boolean",
            "description": "Defines whether the item is Active or Inactive"
          },
          "TypeId": {
            "type": "integer",
            "description": "A read-only field that uniquely identifies the Type",
            "format": "int32"
          },
          "Edited": {
            "$ref": "#/components/schemas/Profiles.REST.Core.Models.EditInfo"
          },
          "Versions": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.ConsentVersionEntry"
            },
            "description": "List of consent versions"
          },
          "Attributes": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.PNEModels.AttributeEntry"
            },
            "description": "List of consent attributes",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.Models.ConsentTypeEntryList": {
        "type": "object",
        "properties": {
          "ConsentTypes": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.ConsentTypeEntry"
            },
            "description": "A collection of Consent Types that can be associated with a Profile.",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.Models.ConsentVersionEntry": {
        "required": [
          "ConsentVersion",
          "LocalizedFields"
        ],
        "type": "object",
        "properties": {
          "ConsentVersion": {
            "maxLength": 50,
            "minLength": 1,
            "type": "string",
            "description": "String representing the version of the consent"
          },
          "LocalizedFields": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.LocalizedConsentField"
            },
            "description": "Localized name and description of the type"
          },
          "ExpirationInDays": {
            "type": "integer",
            "description": "Number of days after which the consent expires",
            "format": "int32"
          },
          "IsActive": {
            "type": "boolean",
            "description": "Status of the type\r\n1(Active) or 0(Inactive)"
          },
          "IsAssociatedWithProfiles": {
            "type": "boolean",
            "description": "True if the ConsentVersion is associated with 1 or more Profiles, false otherwise"
          },
          "ConsentVersionId": {
            "type": "integer",
            "description": "A field that uniquely identifies the consent version",
            "format": "int32"
          },
          "CountDenied": {
            "type": "integer",
            "description": "Count of consent versions linked to profiles in \"Denied\" status.\r\nIncludes all current and previous versions of the consent across all locales.",
            "format": "int32"
          },
          "CountGranted": {
            "type": "integer",
            "description": "Count of consent versions linked to profiles in \"Granted\" status.\r\nIncludes all current and previous versions of the consent across all locales.",
            "format": "int32"
          },
          "CountNotSet": {
            "type": "integer",
            "description": "Count of consent versions linked to profiles in \"NotSet\" status.\r\nIncludes all current and previous versions of the consent across all locales.",
            "format": "int32"
          },
          "CountRevoked": {
            "type": "integer",
            "description": "Count of consent versions linked to profiles in \"Revoked\" status.\r\nIncludes all current and previous versions of the consent across all locales.",
            "format": "int32"
          },
          "Edited": {
            "$ref": "#/components/schemas/Profiles.REST.Core.Models.EditInfo"
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.Models.CustomFieldDateTime": {
        "required": [
          "LocalizedDisplayNames",
          "Name"
        ],
        "type": "object",
        "properties": {
          "Name": {
            "maxLength": 94,
            "minLength": 1,
            "type": "string",
            "description": "The name of the field"
          },
          "LocalizedDisplayNames": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.LocalizedDisplayName"
            },
            "description": "Localized display names of the field"
          },
          "Description": {
            "maxLength": 256,
            "type": "string",
            "description": "The description of the field",
            "default": "",
            "nullable": true
          },
          "UpdateRuleId": {
            "$ref": "#/components/schemas/Profiles.REST.Core.Codebase.GlobalPN+UpdateRules"
          },
          "DisplayOrder": {
            "type": "integer",
            "description": "Determines the display order of the field when driving preference collection touchpoints",
            "format": "int32",
            "default": -1
          },
          "IsRequired": {
            "type": "boolean",
            "description": "Determines whether the custom field is required when creating or replacing a profile.  When set to TRUE, the field cannot\r\nbe removed from the profile."
          },
          "AllowBlanks": {
            "type": "boolean",
            "description": "Allows custom fields to exist with a blank value on a profile.  When set to FALSE, the custom field must be accompanied by \r\na non-blank value when adding or updating a profile."
          },
          "IsExtension": {
            "type": "boolean",
            "description": "Determines whether the custom field is flagged as an extension field or not"
          },
          "IsActive": {
            "type": "boolean",
            "description": "Indicates the status of the field"
          },
          "MinDate": {
            "maxLength": 50,
            "type": "string",
            "description": "Minimum date supported by the field.",
            "default": "",
            "nullable": true
          },
          "MaxDate": {
            "maxLength": 50,
            "type": "string",
            "description": "Maximum value supported by the field.",
            "default": "",
            "nullable": true
          },
          "DefaultValue": {
            "maxLength": 50,
            "type": "string",
            "description": "The default value of the field",
            "default": "",
            "nullable": true
          },
          "Id": {
            "type": "integer",
            "description": "Id of the field.",
            "format": "int32"
          },
          "Edited": {
            "$ref": "#/components/schemas/Profiles.REST.Core.Models.EditInfo"
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.Models.CustomFieldDateTimeList": {
        "type": "object",
        "properties": {
          "DateTimeFields": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.CustomFieldDateTime"
            },
            "description": "A collection of Meta data describing the requirements for collecting DateTime data in a custom field",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.Models.CustomFieldHistory": {
        "type": "object",
        "properties": {
          "ProfileId": {
            "type": "integer",
            "description": "Id associated with the Profile",
            "format": "int32"
          },
          "IsActive": {
            "type": "boolean",
            "description": "Defines whether the item is Active or Inactive",
            "nullable": true
          },
          "Edited": {
            "$ref": "#/components/schemas/Profiles.REST.Core.Models.EditInfo"
          },
          "RegistrationConfirmed": {
            "type": "boolean",
            "description": "An optional field for clients to use at their discretion to accommodate scenarios in which customer profile verification is performed.",
            "nullable": true
          },
          "CustomerType": {
            "type": "string",
            "description": "An identifier used to classify a person by the type of customer. For example: Retail, Commercial, or Marketing",
            "nullable": true
          },
          "PreserveConsents": {
            "type": "boolean",
            "description": "Specifies whether to retain the contact element consents or deactivate them. \r\nTo retain the contact element consents, set the value as True. If set to False, the contact element consents will be deactivated. \r\nThis setting defaults to True, if not specified.",
            "nullable": true
          },
          "PreservePreferences": {
            "type": "boolean",
            "description": "Specifies whether to retain the preferences or deactivate them. \r\nTo retain the preferences, set the value as True. If set to False, the preferences will be deactivated. \r\nThis setting defaults to True, if not specified.",
            "nullable": true
          },
          "CustomerName": {
            "$ref": "#/components/schemas/Profiles.REST.Core.Models.CustomerName"
          },
          "DefaultLocale": {
            "type": "string",
            "description": "Default Locale for the profile.",
            "nullable": true
          },
          "UpdateStatus": {
            "type": "string",
            "description": "\"Complete\" if the record has been processed otherwise \"Pending Update\"",
            "nullable": true
          },
          "ReasonCode": {
            "maxLength": 255,
            "type": "string",
            "description": "An optional parameter that can be passed when deactivating a profile.",
            "nullable": true
          },
          "AlternateIds": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.AlternateIdEntry"
            },
            "description": "A collection of Additional unique identifiers that can be associated with a profile.\r\nFor example, customer identifiers from other applications such as Salesforce, Marketo or Facebook can be stored as AlternateIds.",
            "nullable": true
          },
          "CustomFields": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.CustomFieldValue"
            },
            "description": "A collection of Custom Fields associated with the profile",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.Models.CustomFieldNumeric": {
        "required": [
          "LocalizedDisplayNames",
          "Name"
        ],
        "type": "object",
        "properties": {
          "Name": {
            "maxLength": 94,
            "minLength": 1,
            "type": "string",
            "description": "The name of the field"
          },
          "LocalizedDisplayNames": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.LocalizedDisplayName"
            },
            "description": "Localized display names of the field"
          },
          "Description": {
            "maxLength": 256,
            "type": "string",
            "description": "The description of the field",
            "default": "",
            "nullable": true
          },
          "UpdateRuleId": {
            "$ref": "#/components/schemas/Profiles.REST.Core.Codebase.GlobalPN+UpdateRules"
          },
          "DisplayOrder": {
            "type": "integer",
            "description": "Determines the display order of the field when driving preference collection touchpoints",
            "format": "int32",
            "default": -1
          },
          "IsRequired": {
            "type": "boolean",
            "description": "Determines whether the custom field is required when creating or replacing a profile.  When set to TRUE, the field cannot\r\nbe removed from the profile."
          },
          "AllowBlanks": {
            "type": "boolean",
            "description": "Allows custom fields to exist with a blank value on a profile.  When set to FALSE, the custom field must be accompanied by \r\na non-blank value when adding or updating a profile."
          },
          "IsExtension": {
            "type": "boolean",
            "description": "Determines whether the custom field is flagged as an extension field or not"
          },
          "IsActive": {
            "type": "boolean",
            "description": "Indicates the status of the field"
          },
          "Id": {
            "type": "integer",
            "description": "Id of the field.",
            "format": "int32"
          },
          "Edited": {
            "$ref": "#/components/schemas/Profiles.REST.Core.Models.EditInfo"
          },
          "MinValue": {
            "type": "number",
            "description": "Minimum value supported by the field.",
            "format": "double",
            "default": -1.7976931348623157E+308
          },
          "MaxValue": {
            "type": "number",
            "description": "Maximum value supported by the field.",
            "format": "double",
            "default": 1.7976931348623157E+308
          },
          "DecimalPlaces": {
            "type": "integer",
            "description": "The maximum number of decimal places allowed by the field.",
            "format": "int32",
            "default": -1
          },
          "DefaultValue": {
            "type": "number",
            "description": "The default value of the field",
            "format": "double",
            "default": 0,
            "nullable": true
          },
          "FieldMask": {
            "maxLength": 4000,
            "type": "string",
            "description": "Stores the field's input mask definition. It will be used to drive data collection on a UI",
            "default": "",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.Models.CustomFieldNumericList": {
        "type": "object",
        "properties": {
          "NumericFields": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.CustomFieldNumeric"
            },
            "description": "A collection of Meta data describing the requirements for collecting numeric data in a custom field.",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.Models.CustomFieldSelectList": {
        "required": [
          "DisplayType",
          "LocalizedDisplayNames",
          "Name",
          "PicklistId"
        ],
        "type": "object",
        "properties": {
          "Name": {
            "maxLength": 94,
            "minLength": 1,
            "type": "string",
            "description": "The name of the field"
          },
          "LocalizedDisplayNames": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.LocalizedDisplayName"
            },
            "description": "Localized display names of the field"
          },
          "Description": {
            "maxLength": 256,
            "type": "string",
            "description": "The description of the field",
            "default": "",
            "nullable": true
          },
          "UpdateRuleId": {
            "$ref": "#/components/schemas/Profiles.REST.Core.Codebase.GlobalPN+UpdateRules"
          },
          "DisplayOrder": {
            "type": "integer",
            "description": "Determines the display order of the field when driving preference collection touchpoints",
            "format": "int32",
            "default": -1
          },
          "IsRequired": {
            "type": "boolean",
            "description": "Determines whether the custom field is required when creating or replacing a profile.  When set to TRUE, the field cannot\r\nbe removed from the profile."
          },
          "AllowBlanks": {
            "type": "boolean",
            "description": "Allows custom fields to exist with a blank value on a profile.  When set to FALSE, the custom field must be accompanied by \r\na non-blank value when adding or updating a profile."
          },
          "IsExtension": {
            "type": "boolean",
            "description": "Determines whether the custom field is flagged as an extension field or not"
          },
          "IsActive": {
            "type": "boolean",
            "description": "Indicates the status of the field"
          },
          "Id": {
            "type": "integer",
            "description": "Id of the field.",
            "format": "int32"
          },
          "Edited": {
            "$ref": "#/components/schemas/Profiles.REST.Core.Models.EditInfo"
          },
          "PicklistId": {
            "maximum": 2147483647,
            "minimum": 1,
            "type": "integer",
            "description": "The Id of the associated picklist",
            "format": "int32"
          },
          "DisplayType": {
            "$ref": "#/components/schemas/Profiles.REST.Core.Codebase.GlobalPN+CustomFieldDisplayTypes"
          },
          "DefaultState": {
            "$ref": "#/components/schemas/Profiles.REST.Core.Codebase.GlobalPN+CheckboxStates"
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.Models.CustomFieldSelectListList": {
        "type": "object",
        "properties": {
          "SelectListFields": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.CustomFieldSelectList"
            },
            "description": "A collection of Meta data describing the requirements for collecting single select/radio button, multi-select/checkbox data in a custom field",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.Models.CustomFieldText": {
        "required": [
          "LocalizedDisplayNames",
          "Name"
        ],
        "type": "object",
        "properties": {
          "Name": {
            "maxLength": 94,
            "minLength": 1,
            "type": "string",
            "description": "The name of the field"
          },
          "LocalizedDisplayNames": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.LocalizedDisplayName"
            },
            "description": "Localized display names of the field"
          },
          "Description": {
            "maxLength": 256,
            "type": "string",
            "description": "The description of the field",
            "default": "",
            "nullable": true
          },
          "UpdateRuleId": {
            "$ref": "#/components/schemas/Profiles.REST.Core.Codebase.GlobalPN+UpdateRules"
          },
          "DisplayOrder": {
            "type": "integer",
            "description": "Determines the display order of the field when driving preference collection touchpoints",
            "format": "int32",
            "default": -1
          },
          "IsRequired": {
            "type": "boolean",
            "description": "Determines whether the custom field is required when creating or replacing a profile.  When set to TRUE, the field cannot\r\nbe removed from the profile."
          },
          "AllowBlanks": {
            "type": "boolean",
            "description": "Allows custom fields to exist with a blank value on a profile.  When set to FALSE, the custom field must be accompanied by \r\na non-blank value when adding or updating a profile."
          },
          "IsExtension": {
            "type": "boolean",
            "description": "Determines whether the custom field is flagged as an extension field or not"
          },
          "IsActive": {
            "type": "boolean",
            "description": "Indicates the status of the field"
          },
          "Id": {
            "type": "integer",
            "description": "Id of the field.",
            "format": "int32"
          },
          "Edited": {
            "$ref": "#/components/schemas/Profiles.REST.Core.Models.EditInfo"
          },
          "MinLength": {
            "type": "integer",
            "description": "Minimum length supported by the field.",
            "format": "int32",
            "default": -1
          },
          "MaxLength": {
            "type": "integer",
            "description": "Maximum length supported by the field.",
            "format": "int32",
            "default": -1
          },
          "DefaultValue": {
            "maxLength": 4000,
            "type": "string",
            "description": "The default value of the field",
            "default": "",
            "nullable": true
          },
          "RegEx": {
            "maxLength": 256,
            "type": "string",
            "description": "An optional regular expression that can be used to validate a field on update",
            "default": "",
            "nullable": true
          },
          "FieldMask": {
            "maxLength": 4000,
            "type": "string",
            "description": "Stores the field's input mask definition. It will be used to drive data collection on a UI",
            "default": "",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.Models.CustomFieldTextList": {
        "type": "object",
        "properties": {
          "TextFields": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.CustomFieldText"
            },
            "description": "A collection of Meta data describing the requirements for collecting alphanumeric data in a custom field",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.Models.CustomFieldValue": {
        "required": [
          "Name"
        ],
        "type": "object",
        "properties": {
          "Name": {
            "maxLength": 94,
            "minLength": 1,
            "type": "string",
            "description": "Name of the custom field"
          },
          "Value": {
            "maxLength": 4000,
            "type": "string",
            "description": "Value associated with the custom field.\r\n\r\nThe Custom Field’s Type determines the type of values the custom field can store.\r\nA custom field of Type DateTime can only store \"DateTime\" and \"Date\" values, \r\nwhereas a Custom Field of Type Numeric only stores numerical data (positive numbers, negative numbers, and numbers with and without decimals).",
            "nullable": true
          },
          "IsActive": {
            "type": "boolean"
          },
          "IsExtension": {
            "type": "boolean",
            "description": "Determines whether the custom field is flagged as an extension field or not"
          },
          "Edited": {
            "$ref": "#/components/schemas/Profiles.REST.Core.Models.EditInfo"
          },
          "SendingToDB": {
            "type": "boolean"
          },
          "CustomFieldLink": {
            "type": "integer",
            "format": "int32"
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.Models.CustomFields": {
        "type": "object",
        "properties": {
          "DateTimeFields": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.CustomFieldDateTime"
            },
            "description": "A collection of Meta data describing the requirements for collecting DateTime data in a custom field",
            "nullable": true
          },
          "NumericFields": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.CustomFieldNumeric"
            },
            "description": "A collection of Meta data describing the requirements for collecting numeric data in a custom field",
            "nullable": true
          },
          "SelectListFields": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.CustomFieldSelectList"
            },
            "description": "A collection of Meta data describing the requirements for collecting single select/radio button, multi-select/checkbox data in a custom field",
            "nullable": true
          },
          "TextFields": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.CustomFieldText"
            },
            "description": "A collection of Meta data describing the requirements for collecting alphanumeric data in a custom field",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.Models.CustomerConsent": {
        "required": [
          "ConsentStatus",
          "ConsentType",
          "ConsentVersion",
          "Locale"
        ],
        "type": "object",
        "properties": {
          "ConsentType": {
            "maxLength": 100,
            "minLength": 1,
            "type": "string",
            "description": "An identifier used to classify types of consent. For example, Marketing, Data Processing, Cookie, or Data Sharing"
          },
          "ConsentVersion": {
            "maxLength": 50,
            "minLength": 1,
            "type": "string",
            "description": "The version of the consent"
          },
          "Locale": {
            "maxLength": 15,
            "minLength": 1,
            "type": "string",
            "description": "Locale associated with the consent (en_US: English, United States, en_GB: English, Great Britain)"
          },
          "ConsentStatus": {
            "$ref": "#/components/schemas/Profiles.REST.Core.Codebase.GlobalPN+ConsentStatuses"
          },
          "ReasonCode": {
            "maxLength": 255,
            "type": "string",
            "description": "A value for tracking consent status changes",
            "nullable": true
          },
          "Attributes": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.Attribute"
            },
            "description": "A collection of additional data elements that you want to store with the consent",
            "nullable": true
          },
          "ConsentDate": {
            "type": "string",
            "description": "DateTime when the consent was collected.",
            "nullable": true
          },
          "ExpirationDate": {
            "type": "string",
            "description": "If the consent status is \"granted\", and the Expiration Days configured on the Consent Type and Version are greater than zero, \r\nthis date will be included to show the date when the the consent will expire.  Otherwise it will be excluded from the return set.",
            "default": "",
            "nullable": true
          },
          "Expired": {
            "type": "boolean",
            "description": "True if the consent is expired otherwise false"
          },
          "SourceId": {
            "type": "string",
            "description": "The ID of the Source Group associated with the user that recorded the consent.",
            "default": "",
            "nullable": true
          },
          "Edited": {
            "$ref": "#/components/schemas/Profiles.REST.Core.Models.EditInfo"
          },
          "UpdatedVersionPending": {
            "type": "boolean",
            "description": "True if a newer version of this consent exists, otherwise false"
          },
          "IsHistoryEndPoint": {
            "type": "boolean"
          },
          "IsActive": {
            "type": "boolean"
          },
          "SendingToDB": {
            "type": "boolean"
          },
          "ConsentTypeLink": {
            "type": "integer",
            "format": "int32"
          },
          "ConsentDateUpdated": {
            "type": "boolean"
          },
          "ConsentVersionLink": {
            "type": "integer",
            "format": "int32"
          },
          "LocaleLink": {
            "type": "integer",
            "format": "int32"
          },
          "SysStartTime": {
            "type": "string",
            "format": "date-time"
          },
          "SysEndTime": {
            "type": "string",
            "format": "date-time"
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.Models.CustomerName": {
        "type": "object",
        "properties": {
          "FirstName": {
            "maxLength": 32,
            "type": "string",
            "description": "First name of the individual",
            "nullable": true
          },
          "MiddleName": {
            "maxLength": 64,
            "type": "string",
            "description": "Middle name of the individual",
            "nullable": true
          },
          "LastName": {
            "maxLength": 64,
            "type": "string",
            "description": "Last name of the individual",
            "nullable": true
          },
          "Prefix": {
            "maxLength": 5,
            "type": "string",
            "description": "Prefix of the individual",
            "nullable": true
          },
          "Suffix": {
            "maxLength": 5,
            "type": "string",
            "description": "Suffix of the individual",
            "nullable": true
          },
          "SendingToDB": {
            "type": "boolean"
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.Models.CustomerTypeEntry": {
        "required": [
          "LocalizedFields",
          "TypeName"
        ],
        "type": "object",
        "properties": {
          "TypeName": {
            "maxLength": 100,
            "minLength": 1,
            "type": "string",
            "description": "The name given to the type."
          },
          "LocalizedFields": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/PossibleNow.PNEnterprise.Domain2.Core.Models.LocalizedField"
            },
            "description": "A collection of a locale specific name/value pair of Strings used to support localization"
          },
          "IsDefault": {
            "type": "boolean",
            "description": "Determines if it is the Default Type"
          },
          "IsActive": {
            "type": "boolean",
            "description": "Defines whether the item is Active or Inactive"
          },
          "TypeId": {
            "type": "integer",
            "description": "A read-only field that uniquely identifies the Type",
            "format": "int32"
          },
          "Edited": {
            "$ref": "#/components/schemas/Profiles.REST.Core.Models.EditInfo"
          },
          "RequiredContactConsents": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.RequiredContactConsent"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.Models.CustomerTypeEntryList": {
        "type": "object",
        "properties": {
          "CustomerTypes": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.CustomerTypeEntry"
            },
            "description": "A collection of Customer Types that can be associated with a Profile.",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.Models.EditInfo": {
        "type": "object",
        "properties": {
          "CreateDate": {
            "type": "string",
            "description": "The date and time the resource was created",
            "nullable": true
          },
          "CreatedBy": {
            "type": "string",
            "description": "The name of the user who created the resource",
            "nullable": true
          },
          "ModifiedDate": {
            "type": "string",
            "description": "The date and time the resource was last modified",
            "nullable": true
          },
          "ModifiedBy": {
            "type": "string",
            "description": "The name of the user who last modified the resource",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.Models.EmailPreference": {
        "required": [
          "EmailAddress"
        ],
        "type": "object",
        "properties": {
          "EmailAddressType": {
            "maxLength": 100,
            "type": "string",
            "description": "Name of the Email Type for which an email address can be associated",
            "nullable": true
          },
          "EmailAddress": {
            "maxLength": 256,
            "minLength": 1,
            "type": "string",
            "description": "Email Address on the Profile"
          },
          "IsDefault": {
            "type": "boolean",
            "description": "Determines if it’s the default Email on the Profile. Only one Email can be set as default for each Profile.",
            "nullable": true
          },
          "Consents": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.CustomerConsent"
            },
            "nullable": true
          },
          "IsActive": {
            "type": "boolean",
            "description": "Defines whether the item is Active or Inactive."
          },
          "Edited": {
            "$ref": "#/components/schemas/Profiles.REST.Core.Models.EditInfo"
          },
          "IsModified": {
            "type": "boolean"
          },
          "EmailTypeLink": {
            "type": "integer",
            "format": "int32"
          },
          "SysStartTime": {
            "type": "string",
            "format": "date-time"
          },
          "SysEndTime": {
            "type": "string",
            "format": "date-time"
          },
          "SendingToDB": {
            "type": "boolean"
          },
          "EmailPreferences": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.ProfilePreference"
            },
            "nullable": true
          },
          "MissingRequiredConsents": {
            "type": "boolean"
          },
          "IsHistoryEndPoint": {
            "type": "boolean"
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.Models.EmailTypeEntry": {
        "required": [
          "LocalizedFields",
          "TypeName"
        ],
        "type": "object",
        "properties": {
          "TypeName": {
            "maxLength": 100,
            "minLength": 1,
            "type": "string",
            "description": "The name given to the type."
          },
          "LocalizedFields": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/PossibleNow.PNEnterprise.Domain2.Core.Models.LocalizedField"
            },
            "description": "A collection of a locale specific name/value pair of Strings used to support localization"
          },
          "IsDefault": {
            "type": "boolean",
            "description": "Determines if it is the Default Type"
          },
          "IsActive": {
            "type": "boolean",
            "description": "Defines whether the item is Active or Inactive"
          },
          "TypeId": {
            "type": "integer",
            "description": "A read-only field that uniquely identifies the Type",
            "format": "int32"
          },
          "Edited": {
            "$ref": "#/components/schemas/Profiles.REST.Core.Models.EditInfo"
          },
          "RequiredContactConsents": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.RequiredContactConsent"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.Models.EmailTypeEntryList": {
        "type": "object",
        "properties": {
          "EmailTypes": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.EmailTypeEntry"
            },
            "description": "A collection of Email Types that can be associated with a Profile.",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.Models.FieldSelectOption": {
        "required": [
          "LocalizedFieldSelectOptions",
          "Value"
        ],
        "type": "object",
        "properties": {
          "LocalizedFieldSelectOptions": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.LocalizedFieldSelectOption"
            },
            "description": "Localized field select options"
          },
          "Value": {
            "maxLength": 256,
            "minLength": 1,
            "type": "string",
            "description": "Value of the field option"
          },
          "DisplayOrder": {
            "type": "integer",
            "description": "Display order of the field option",
            "format": "int32"
          },
          "IsDefault": {
            "type": "boolean",
            "description": "Determines if it’s the default field select option"
          },
          "IsActive": {
            "type": "boolean",
            "description": "Status of the field select option\r\n1(Active) or 0(Inactive)"
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.Models.GroupEntry": {
        "required": [
          "GroupName"
        ],
        "type": "object",
        "properties": {
          "GroupType": {
            "maxLength": 100,
            "type": "string",
            "description": "Name of the Group Type for which a Group Id can be associated",
            "nullable": true
          },
          "IsPrimary": {
            "type": "boolean",
            "description": "If set to true, the profile is a primary member of the group"
          },
          "GroupName": {
            "maxLength": 255,
            "minLength": 1,
            "type": "string",
            "description": "GroupName associated with the Profile"
          },
          "IsActive": {
            "type": "boolean",
            "description": "Defines whether the item is Active or Inactive."
          },
          "Edited": {
            "$ref": "#/components/schemas/Profiles.REST.Core.Models.EditInfo"
          },
          "SendingToDB": {
            "type": "boolean"
          },
          "GroupIdTypeLink": {
            "type": "integer",
            "format": "int32"
          },
          "GroupIdLink": {
            "type": "integer",
            "format": "int32"
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.Models.GroupName": {
        "type": "object",
        "properties": {
          "Name": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.Models.GroupTypeEntry": {
        "required": [
          "LocalizedFields",
          "TypeName"
        ],
        "type": "object",
        "properties": {
          "TypeName": {
            "maxLength": 100,
            "minLength": 1,
            "type": "string",
            "description": "The name given to the type."
          },
          "LocalizedFields": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/PossibleNow.PNEnterprise.Domain2.Core.Models.LocalizedField"
            },
            "description": "A collection of a locale specific name/value pair of Strings used to support localization"
          },
          "IsDefault": {
            "type": "boolean",
            "description": "Determines if it is the Default Type"
          },
          "IsActive": {
            "type": "boolean",
            "description": "Defines whether the item is Active or Inactive"
          },
          "TypeId": {
            "type": "integer",
            "description": "A read-only field that uniquely identifies the Type",
            "format": "int32"
          },
          "Edited": {
            "$ref": "#/components/schemas/Profiles.REST.Core.Models.EditInfo"
          },
          "RequiredContactConsents": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.RequiredContactConsent"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.Models.GroupTypeEntryList": {
        "type": "object",
        "properties": {
          "GroupTypes": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.GroupTypeEntry"
            },
            "description": "A collection of Group Types that can be associated with a Profile.",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.Models.GroupTypeNameEntry": {
        "required": [
          "GroupType"
        ],
        "type": "object",
        "properties": {
          "TypeID": {
            "type": "integer",
            "description": "ID of the Group Type",
            "format": "int32"
          },
          "GroupType": {
            "maxLength": 100,
            "minLength": 1,
            "type": "string",
            "description": "Name of the Group Type"
          },
          "GroupNames": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.GroupName"
            },
            "description": "List of GroupNames associated with the Group Type",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.Models.GroupTypeNameEntryList": {
        "type": "object",
        "properties": {
          "GroupTypeNames": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.GroupTypeNameEntry"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.Models.GroupUpdateInfo": {
        "required": [
          "NewGroupName",
          "OldGroupName"
        ],
        "type": "object",
        "properties": {
          "OldGroupName": {
            "minLength": 1,
            "type": "string"
          },
          "NewGroupName": {
            "minLength": 1,
            "type": "string"
          },
          "AllowMerge": {
            "type": "boolean"
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.Models.Import.BulkAddressPreference": {
        "required": [
          "Address1",
          "City",
          "PostalCode",
          "StateProvince"
        ],
        "type": "object",
        "properties": {
          "Address1": {
            "maxLength": 125,
            "minLength": 1,
            "type": "string",
            "description": "Address1 associated with the Profile"
          },
          "Address2": {
            "maxLength": 125,
            "type": "string",
            "description": "Address2 associated with the Profile",
            "default": "",
            "nullable": true
          },
          "City": {
            "maxLength": 50,
            "minLength": 1,
            "type": "string",
            "description": "City associated with the Profile"
          },
          "StateProvince": {
            "maxLength": 50,
            "minLength": 2,
            "type": "string",
            "description": "State associated with the Profile"
          },
          "CountryCode_Numeric": {
            "maxLength": 3,
            "type": "string",
            "description": "Numeric Country Code associated with the Profile",
            "default": "",
            "nullable": true
          },
          "CountryCode_Alpha2": {
            "maxLength": 2,
            "type": "string",
            "description": "Alpha2 Country Code associated with the Profile",
            "default": "",
            "nullable": true
          },
          "CountryCode_Alpha3": {
            "maxLength": 3,
            "type": "string",
            "description": "Alpha3 Country Code associated with the Profile",
            "default": "",
            "nullable": true
          },
          "PostalCode": {
            "maxLength": 15,
            "minLength": 1,
            "type": "string",
            "description": "Mailing Postal Code associated with the Profile"
          },
          "AddressType": {
            "maxLength": 100,
            "type": "string",
            "description": "Name of the Type to which the Address is associated",
            "nullable": true
          },
          "IsActive": {
            "type": "boolean",
            "description": "Defines whether the item is Active or Inactive."
          },
          "IsDefault": {
            "type": "boolean",
            "description": "Determines if it’s the default Address on the Profile. Only one Address can be set as default for each Profile.",
            "nullable": true
          },
          "Consents": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.CustomerConsent"
            },
            "nullable": true
          },
          "CassAddress1": {
            "type": "string",
            "description": "Standardized Address2 associated with the profile",
            "nullable": true
          },
          "CassAddress2": {
            "type": "string",
            "description": "Standardized Address2 associated with the profile",
            "nullable": true
          },
          "CassCity": {
            "type": "string",
            "description": "Standardized City associated with the profile",
            "nullable": true
          },
          "CassStateProvince": {
            "type": "string",
            "description": "Standardized StateProvince associated with the profile",
            "nullable": true
          },
          "CassPostalCode": {
            "type": "string",
            "description": "Standardized PostalCode associated with the profile",
            "nullable": true
          },
          "CassStatus": {
            "type": "string",
            "description": "Status code returned from the address standardization engine.\r\nY - The address was standardized\r\nN - The address was not standardized",
            "nullable": true
          },
          "Country": {
            "type": "string",
            "description": "Country associated with the Profile",
            "nullable": true
          },
          "Edited": {
            "$ref": "#/components/schemas/Profiles.REST.Core.Models.EditInfo"
          },
          "SendingToDB": {
            "type": "boolean"
          },
          "CountryTypeNbr": {
            "type": "integer",
            "format": "int32"
          },
          "IsModified": {
            "type": "boolean"
          },
          "CassStreetPreDirectional": {
            "type": "string",
            "nullable": true
          },
          "CassStreetNumber": {
            "type": "string",
            "nullable": true
          },
          "CassStreetName": {
            "type": "string",
            "nullable": true
          },
          "CassStreetSuffix": {
            "type": "string",
            "nullable": true
          },
          "CassStreetPostDirectional": {
            "type": "string",
            "nullable": true
          },
          "CassSuite": {
            "type": "string",
            "nullable": true
          },
          "CassZip": {
            "type": "string",
            "nullable": true
          },
          "CassZip4": {
            "type": "string",
            "nullable": true
          },
          "AddressTypeLink": {
            "type": "integer",
            "format": "int32"
          },
          "SysStartTime": {
            "type": "string",
            "format": "date-time"
          },
          "SysEndTime": {
            "type": "string",
            "format": "date-time"
          },
          "Exceptions": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.Import.ExceptionsDefinition"
            },
            "nullable": true
          },
          "AddressPreferences": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.Import.BulkProfilePreference"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.Models.Import.BulkAlternateIdEntry": {
        "required": [
          "AlternateId"
        ],
        "type": "object",
        "properties": {
          "AlternateIdType": {
            "maxLength": 100,
            "type": "string",
            "description": "Name of the AlternateIdType to which the AlternateId can be associated.",
            "nullable": true
          },
          "AlternateId": {
            "maxLength": 512,
            "minLength": 1,
            "type": "string",
            "description": "An additional identifier on the profile. \r\n\r\nAlternateIds are additional Id’s that you can store with a profile.They are unique by type. \r\nYou cannot store preferences with an AlternateId.They can be passed as a queryString parameter to retrieve a profile."
          },
          "IsActive": {
            "type": "boolean",
            "description": "Defines whether the item is Active or Inactive."
          },
          "Edited": {
            "$ref": "#/components/schemas/Profiles.REST.Core.Models.EditInfo"
          },
          "SendingToDB": {
            "type": "boolean"
          },
          "AlternateIdTypeLink": {
            "type": "integer",
            "format": "int32"
          },
          "Exceptions": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.Import.ExceptionsDefinition"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.Models.Import.BulkCustomFieldValue": {
        "required": [
          "Name"
        ],
        "type": "object",
        "properties": {
          "Name": {
            "maxLength": 94,
            "minLength": 1,
            "type": "string",
            "description": "Name of the custom field"
          },
          "Value": {
            "maxLength": 4000,
            "type": "string",
            "description": "Value associated with the custom field.\r\n\r\nThe Custom Field’s Type determines the type of values the custom field can store.\r\nA custom field of Type DateTime can only store \"DateTime\" and \"Date\" values, \r\nwhereas a Custom Field of Type Numeric only stores numerical data (positive numbers, negative numbers, and numbers with and without decimals).",
            "nullable": true
          },
          "IsActive": {
            "type": "boolean"
          },
          "IsExtension": {
            "type": "boolean",
            "description": "Determines whether the custom field is flagged as an extension field or not"
          },
          "Edited": {
            "$ref": "#/components/schemas/Profiles.REST.Core.Models.EditInfo"
          },
          "SendingToDB": {
            "type": "boolean"
          },
          "CustomFieldLink": {
            "type": "integer",
            "format": "int32"
          },
          "Exceptions": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.Import.ExceptionsDefinition"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.Models.Import.BulkCustomerConsent": {
        "required": [
          "ConsentStatus",
          "ConsentType",
          "ConsentVersion",
          "Locale"
        ],
        "type": "object",
        "properties": {
          "ConsentType": {
            "maxLength": 100,
            "minLength": 1,
            "type": "string",
            "description": "An identifier used to classify types of consent. For example, Marketing, Data Processing, Cookie, or Data Sharing"
          },
          "ConsentVersion": {
            "maxLength": 50,
            "minLength": 1,
            "type": "string",
            "description": "The version of the consent"
          },
          "Locale": {
            "maxLength": 15,
            "minLength": 1,
            "type": "string",
            "description": "Locale associated with the consent (en_US: English, United States, en_GB: English, Great Britain)"
          },
          "ConsentStatus": {
            "$ref": "#/components/schemas/Profiles.REST.Core.Codebase.GlobalPN+ConsentStatuses"
          },
          "ReasonCode": {
            "maxLength": 255,
            "type": "string",
            "description": "A value for tracking consent status changes",
            "nullable": true
          },
          "Attributes": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.Attribute"
            },
            "description": "A collection of additional data elements that you want to store with the consent",
            "nullable": true
          },
          "ConsentDate": {
            "type": "string",
            "description": "DateTime when the consent was collected.",
            "nullable": true
          },
          "ExpirationDate": {
            "type": "string",
            "description": "If the consent status is \"granted\", and the Expiration Days configured on the Consent Type and Version are greater than zero, \r\nthis date will be included to show the date when the the consent will expire.  Otherwise it will be excluded from the return set.",
            "default": "",
            "nullable": true
          },
          "Expired": {
            "type": "boolean",
            "description": "True if the consent is expired otherwise false"
          },
          "SourceId": {
            "type": "string",
            "description": "The ID of the Source Group associated with the user that recorded the consent.",
            "default": "",
            "nullable": true
          },
          "Edited": {
            "$ref": "#/components/schemas/Profiles.REST.Core.Models.EditInfo"
          },
          "UpdatedVersionPending": {
            "type": "boolean",
            "description": "True if a newer version of this consent exists, otherwise false"
          },
          "IsHistoryEndPoint": {
            "type": "boolean"
          },
          "IsActive": {
            "type": "boolean"
          },
          "SendingToDB": {
            "type": "boolean"
          },
          "ConsentTypeLink": {
            "type": "integer",
            "format": "int32"
          },
          "ConsentDateUpdated": {
            "type": "boolean"
          },
          "ConsentVersionLink": {
            "type": "integer",
            "format": "int32"
          },
          "LocaleLink": {
            "type": "integer",
            "format": "int32"
          },
          "SysStartTime": {
            "type": "string",
            "format": "date-time"
          },
          "SysEndTime": {
            "type": "string",
            "format": "date-time"
          },
          "Exceptions": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.Import.ExceptionsDefinition"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.Models.Import.BulkEmailPreference": {
        "required": [
          "EmailAddress"
        ],
        "type": "object",
        "properties": {
          "EmailAddressType": {
            "maxLength": 100,
            "type": "string",
            "description": "Name of the Email Type for which an email address can be associated",
            "nullable": true
          },
          "EmailAddress": {
            "maxLength": 256,
            "minLength": 1,
            "type": "string",
            "description": "Email Address on the Profile"
          },
          "IsDefault": {
            "type": "boolean",
            "description": "Determines if it’s the default Email on the Profile. Only one Email can be set as default for each Profile.",
            "nullable": true
          },
          "Consents": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.CustomerConsent"
            },
            "nullable": true
          },
          "IsActive": {
            "type": "boolean",
            "description": "Defines whether the item is Active or Inactive."
          },
          "Edited": {
            "$ref": "#/components/schemas/Profiles.REST.Core.Models.EditInfo"
          },
          "SendingToDB": {
            "type": "boolean"
          },
          "IsModified": {
            "type": "boolean"
          },
          "EmailTypeLink": {
            "type": "integer",
            "format": "int32"
          },
          "SysStartTime": {
            "type": "string",
            "format": "date-time"
          },
          "SysEndTime": {
            "type": "string",
            "format": "date-time"
          },
          "Exceptions": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.Import.ExceptionsDefinition"
            },
            "nullable": true
          },
          "EmailPreferences": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.Import.BulkProfilePreference"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.Models.Import.BulkGroupEntry": {
        "required": [
          "GroupName"
        ],
        "type": "object",
        "properties": {
          "GroupType": {
            "maxLength": 100,
            "type": "string",
            "description": "Name of the Group Type for which a Group Id can be associated",
            "nullable": true
          },
          "IsPrimary": {
            "type": "boolean",
            "description": "If set to true, the profile is a primary member of the group"
          },
          "GroupName": {
            "maxLength": 255,
            "minLength": 1,
            "type": "string",
            "description": "GroupName associated with the Profile"
          },
          "IsActive": {
            "type": "boolean",
            "description": "Defines whether the item is Active or Inactive."
          },
          "Edited": {
            "$ref": "#/components/schemas/Profiles.REST.Core.Models.EditInfo"
          },
          "SendingToDB": {
            "type": "boolean"
          },
          "GroupIdTypeLink": {
            "type": "integer",
            "format": "int32"
          },
          "GroupIdLink": {
            "type": "integer",
            "format": "int32"
          },
          "Exceptions": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.Import.ExceptionsDefinition"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.Models.Import.BulkImportException": {
        "type": "object",
        "properties": {
          "Count": {
            "type": "integer",
            "description": "Number of exception records returned based on the criteria provided in the request properties.",
            "format": "int32"
          },
          "HasMore": {
            "type": "boolean",
            "description": "Based on the limit value that the request is based off of this value lets the user know that there are additional exceptions that occurred other than what the output is providing.  \r\nIf true, the user can adjust the offset or limit in the request to retrieve the additional exceptions that are not reported."
          },
          "Limit": {
            "type": "integer",
            "description": "Maximum number of records that will be returned in this request based on the limit value provided in the request.",
            "format": "int32"
          },
          "Offset": {
            "type": "integer",
            "description": "The index of the first exception record to retrieve based off of the offset value provided in the request.",
            "format": "int32"
          },
          "TotalResults": {
            "type": "integer",
            "description": "This is the Total number of exception records returned in the request.  This number is limited to the maximum number \r\ndefined in the limit and will not exceed that value.",
            "format": "int32"
          },
          "FailedRecords": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.Import.BulkUserProfilePreferenceException"
            },
            "description": "This value is the list of profile records that encountered exceptions.  Profile exceptions will be returned in the format of \r\nthe BulkUserProfilePreferenceException collection and will detail the data that was received as well as detail what exceptions \r\nwere encountered in the ExceptionsDefinition collection.",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.Models.Import.BulkImportStatus": {
        "required": [
          "Name"
        ],
        "type": "object",
        "properties": {
          "Name": {
            "maxLength": 100,
            "minLength": 1,
            "type": "string",
            "description": "This is the name that the user chooses for the bulk import.  \r\nWe recommend using an easy to identify string that can be used to find and track the import."
          },
          "DataStageDuration": {
            "maximum": 10,
            "minimum": 0,
            "type": "integer",
            "description": "Determines the number of days for retaining staged data before it is  permanently deleted.  Use this attribute if you \r\nrequire the data you are staging to be stored for a specified length of time for auditing purposes.  \r\nThe staged data can exceed the length of time that the access token is active, however the data will not be \r\naccessible to the user through an API or to execute in an import.",
            "format": "int32"
          },
          "ImportAction": {
            "type": "string",
            "description": "Specifies the type of action to be performed during the bulk import operation. You have two options to choose from: Add (default) and Delete.",
            "nullable": true
          },
          "MatchCriteria": {
            "type": "string",
            "description": "In the absence of a profile id a field name can be inserted in this value to update a specific profile.  \r\nUse this setting when a standard profile ID is not used to identify a profile.  For instance, if a field \"AlternateID\" \r\nis used to identify a profile, use the term \"\"AlternateIDType\"\" in this field.  Used in conjunction with MatchValue defined below.",
            "nullable": true
          },
          "MatchValue": {
            "type": "string",
            "description": "This is the value that should be matched with the Match Criteria above to update a specific profile.  \r\nUse this setting when a standard profile ID is not used to identify a profile.  For instance, if a field \"AlternateID\" \r\nwith a type of XYZ1 is used to identify a profile, put the value of \"XYZ1\" in this field to identify what type is \r\nbeing searched for to identify the profile.  Used in conjunction with MatchCriteria defined above.",
            "nullable": true
          },
          "RefreshAlternateIds": {
            "type": "boolean",
            "description": "If true, existing AlternateIds that are NOT included in the import, will be deactivated.  \r\nThe boolean value for RefreshAlternateIds that was defined in the initiate request is what will be returned."
          },
          "RefreshContacts": {
            "type": "boolean",
            "description": "If true, existing profile contact elements that are NOT included in the import, will be deactivated along with any \r\npreferences associated with them.  The boolean value for RefreshContacts that was defined in the initiate request is \r\nwhat will be returned."
          },
          "RefreshCustomFields": {
            "type": "boolean",
            "description": "If true, existing CustomFields that are NOT included in the import, will be deleted.  \r\nThe boolean value for RefreshCustomFields that was defined in the initiate request is what will be returned."
          },
          "RefreshGroups": {
            "type": "boolean",
            "description": "If true, existing Groups that are NOT included in the import, will be deactivated.  \r\nThe boolean value for RefreshGroups that was defined in the initiate request is what will be returned."
          },
          "RefreshTags": {
            "type": "boolean",
            "description": "If true, existing Tags that are NOT included in the import, will be deleted.  \r\nThe boolean value for RefreshTags that was defined in the initiate request is what will be returned."
          },
          "AllowPriorConsents": {
            "type": "boolean",
            "description": "If true, an older version of a consent can be added to a profile with any status, SO LONG AS a newer version of the \r\nconsent doesn't already exist on the profile, regardless of locale\r\nThe boolean value for AllowPriorConsents that was defined in the initiate request is what will be returned."
          },
          "AccessToken": {
            "type": "integer",
            "description": "Token created by the initiate method that will be used to stage, execute, and retrieve import status and failed records.",
            "format": "int32"
          },
          "Status": {
            "type": "string",
            "description": "Returns the current state of the import. \"Initiated\", \"Staging\", \"Queued\", \"Processing\", \"Completed\", or \"Failed\"",
            "nullable": true
          },
          "Expires": {
            "type": "string",
            "description": "This is the date when the access token generated from the initiate step of your import will expire.  \r\nThe amount of time an access token is active is configurable in a customer's environment but not through the user interface.  \r\nOnce an access token expires it cannot be used again for bulk import functions.",
            "nullable": true
          },
          "TotalRecordsReceived": {
            "type": "integer",
            "description": "Total number of profile records that were received from the data provided in the stage request body.  \r\nThis number is the combined value of all of the requests that were received during the staging phase of the import.",
            "format": "int32"
          },
          "ValidationSuccessful": {
            "type": "integer",
            "description": "Total Number of profile records that successfully passed validation and are able to be imported into Profiles.  \r\nThis number is the combined value of all of the requests that were received during the staging phase of the import.",
            "format": "int32"
          },
          "ValidationFailed": {
            "type": "integer",
            "description": "Number of profile records that failed validation during the staging process.  \r\nAny profile records that fail validation will not be imported into Profiles during the execution phase.",
            "format": "int32"
          },
          "Processed": {
            "type": "integer",
            "description": "Number of profile records that have been processed or imported into Profiles.",
            "format": "int32"
          },
          "Pending": {
            "type": "integer",
            "description": "Total amount of records that have been marked as pending to be processed during the staging phase.  \r\nThis number is the combined value of all of the requests that were received during the staging phase of the import.",
            "format": "int32"
          },
          "Exceptions": {
            "type": "integer",
            "description": "Total number of records that encountered exceptions during the import execution.",
            "format": "int32"
          },
          "NotHonored": {
            "type": "integer",
            "description": "Number of records that were not able to be inserted or updated during the import process due to a data or business rule.",
            "format": "int32"
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.Models.Import.BulkPhoneNumberPreference": {
        "required": [
          "PhoneNumber"
        ],
        "type": "object",
        "properties": {
          "PhoneType": {
            "maxLength": 100,
            "type": "string",
            "description": "Name of the Phone Type for which a phone number can be associated",
            "nullable": true
          },
          "PhoneNumber": {
            "maxLength": 50,
            "minLength": 1,
            "type": "string",
            "description": "Phone Number on the Profile"
          },
          "PhoneNumberNumeric": {
            "type": "integer",
            "description": "A read-only field that stores the numeric version of the phone number.",
            "format": "int64"
          },
          "IsDefault": {
            "type": "boolean",
            "description": "Determines if it’s the default Phone on the Profile. Only one Phone can be set as default for each Profile.",
            "nullable": true
          },
          "Consents": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.CustomerConsent"
            },
            "nullable": true
          },
          "IsMobile": {
            "type": "boolean",
            "description": "Determines if it’s a mobile phone number.  Defaults to false",
            "nullable": true
          },
          "IsActive": {
            "type": "boolean",
            "description": "Defines whether the item is Active or Inactive."
          },
          "Edited": {
            "$ref": "#/components/schemas/Profiles.REST.Core.Models.EditInfo"
          },
          "SendingToDB": {
            "type": "boolean"
          },
          "IsModified": {
            "type": "boolean"
          },
          "PhoneTypeLink": {
            "type": "integer",
            "format": "int32"
          },
          "SysStartTime": {
            "type": "string",
            "format": "date-time"
          },
          "SysEndTime": {
            "type": "string",
            "format": "date-time"
          },
          "Exceptions": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.Import.ExceptionsDefinition"
            },
            "nullable": true
          },
          "PhonePreferences": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.Import.BulkProfilePreference"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.Models.Import.BulkProfilePreference": {
        "required": [
          "FilterId",
          "PreferenceType"
        ],
        "type": "object",
        "properties": {
          "ProgramId": {
            "type": "string",
            "description": "The unique identifier of a Program",
            "nullable": true
          },
          "ChannelId": {
            "type": "string",
            "description": "The unique identifier of the Channel. \r\nPhone, Text/SMS, Email, Mail, and Solicit are the channel ID values.",
            "nullable": true
          },
          "ConsentAssociations": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.ConsentAssociation"
            },
            "nullable": true
          },
          "MatchType": {
            "type": "string",
            "description": "The Match Type indicates if the preference was Expressed or Implied. \r\nThis only applies if your account has the Preference Propagation feature enabled.",
            "nullable": true
          },
          "ReasonCode": {
            "type": "string",
            "description": "Represents the reason for deactivation as specified on a preference deactivation request.",
            "nullable": true
          },
          "ExpirationDate": {
            "type": "string",
            "description": "The computed date when the preference will expire based on the preference expiration \r\nduration configured on the Filter.If there is no expiration setup, the system will output a blank value.",
            "default": "",
            "nullable": true
          },
          "PreferenceStatus": {
            "type": "string",
            "description": "The status of the preference, Active or Expired.",
            "nullable": true
          },
          "LastModifiedDate": {
            "type": "string",
            "description": "The date and time when the preference was last updated in the system. This is a system generated date.",
            "nullable": true
          },
          "UserId": {
            "type": "string",
            "description": "The ID of the user or system that recorded the preference",
            "nullable": true
          },
          "SourceId": {
            "type": "string",
            "description": "The ID of the Source Group associated with the user that recorded the preference.",
            "nullable": true
          },
          "FilterId": {
            "maxLength": 50,
            "minLength": 1,
            "type": "string",
            "description": "The unique identifier of a Filter (preference option)."
          },
          "PreferenceType": {
            "$ref": "#/components/schemas/Profiles.REST.Core.Codebase.GlobalPN+PreferenceTypes"
          },
          "FrequencyId": {
            "maxLength": 20,
            "type": "string",
            "description": "The communication frequency associated with the preference. \r\nFor preferences with no frequency value, the system will output \r\nthe default frequency value associated with the Filter.",
            "nullable": true
          },
          "Attributes": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.Attribute"
            },
            "description": "A collection of additional data elements that you want to store with the preference",
            "nullable": true
          },
          "PreferenceAttributes": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.Attribute"
            },
            "nullable": true,
            "readOnly": true
          },
          "CustomerDate": {
            "type": "string",
            "description": "DateTime when the preference was collected.",
            "nullable": true
          },
          "DropReasonNbr": {
            "type": "integer",
            "description": "This is an internal field that is used to provide the reason the preference was archived from the Profile",
            "format": "int32",
            "default": -1
          },
          "MissingRequiredConsents": {
            "type": "boolean"
          },
          "IsHistoryEndPoint": {
            "type": "boolean"
          },
          "SendingToDB": {
            "type": "boolean"
          },
          "IsActive": {
            "type": "boolean"
          },
          "FilterHeaderLink": {
            "type": "integer",
            "format": "int32"
          },
          "FilterLink": {
            "type": "integer",
            "format": "int32"
          },
          "FrequencyLink": {
            "type": "integer",
            "format": "int32"
          },
          "IsDNStatus": {
            "type": "boolean"
          },
          "Exceptions": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.Import.ExceptionsDefinition"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.Models.Import.BulkTag": {
        "required": [
          "Name"
        ],
        "type": "object",
        "properties": {
          "Name": {
            "maxLength": 100,
            "minLength": 1,
            "type": "string",
            "description": "Tag Name"
          },
          "SendingToDB": {
            "type": "boolean"
          },
          "IsActive": {
            "type": "boolean"
          },
          "ProfileTagLink": {
            "type": "integer",
            "format": "int32"
          },
          "Exceptions": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.Import.ExceptionsDefinition"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.Models.Import.BulkUserProfilePreference": {
        "type": "object",
        "properties": {
          "ProfileId": {
            "type": "integer",
            "description": "A unique identifier associated with a Profile which is generated by the system when a profile is initially created.",
            "format": "int32"
          },
          "IsActive": {
            "type": "boolean",
            "description": "Status of the Profile\r\n1(Active) or 0(Inactive)",
            "nullable": true
          },
          "DefaultLocale": {
            "maxLength": 15,
            "type": "string",
            "description": "Default Locale for this Profile.  If not specified, the Client default Locale will be used",
            "default": "",
            "nullable": true
          },
          "RegistrationConfirmed": {
            "type": "boolean",
            "description": "An optional field for clients to use at their discretion to accommodate scenarios in which customer profile verification is performed.",
            "nullable": true
          },
          "CustomerType": {
            "maxLength": 100,
            "type": "string",
            "description": "An identifier used to classify a person by the type of customer. For example, Retail, Commercial, or Marketing",
            "nullable": true
          },
          "PreserveConsents": {
            "type": "boolean",
            "description": "Specifies whether to retain the contact element consents or deactivate them. \r\nTo retain the contact element consents, set the value as True. If set to False, the contact element consents will be deactivated. \r\nThis setting defaults to True, if not specified.",
            "nullable": true
          },
          "PreservePreferences": {
            "type": "boolean",
            "description": "Specifies whether to retain the preferences or deactivate them. \r\nTo retain the preferences, set the value as True. If set to False, the preferences will be deactivated. \r\nThis setting defaults to True, if not specified.",
            "nullable": true
          },
          "CustomerName": {
            "$ref": "#/components/schemas/Profiles.REST.Core.Models.CustomerName"
          },
          "Consents": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.Import.BulkCustomerConsent"
            },
            "nullable": true
          },
          "ProfilePreferences": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.Import.BulkProfilePreference"
            },
            "nullable": true
          },
          "AlternateIds": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.Import.BulkAlternateIdEntry"
            },
            "nullable": true
          },
          "Addresses": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.Import.BulkAddressPreference"
            },
            "nullable": true
          },
          "PhoneNumbers": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.Import.BulkPhoneNumberPreference"
            },
            "nullable": true
          },
          "Emails": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.Import.BulkEmailPreference"
            },
            "nullable": true
          },
          "Groups": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.Import.BulkGroupEntry"
            },
            "nullable": true
          },
          "ProfileTags": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.Import.BulkTag"
            },
            "nullable": true
          },
          "CustomFields": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.Import.BulkCustomFieldValue"
            },
            "nullable": true
          },
          "Exceptions": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.Import.ExceptionsDefinition"
            },
            "nullable": true
          },
          "ReasonCode": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.Models.Import.BulkUserProfilePreferenceException": {
        "type": "object",
        "properties": {
          "ProfileId": {
            "type": "integer",
            "description": "A unique identifier associated with a Profile which is generated by the system when a profile is initially created.",
            "format": "int32"
          },
          "IsActive": {
            "type": "boolean",
            "description": "Status of the Profile\r\n1(Active) or 0(Inactive)",
            "nullable": true
          },
          "DefaultLocale": {
            "maxLength": 15,
            "type": "string",
            "description": "Default Locale for this Profile.  If not specified, the Client default Locale will be used",
            "default": "",
            "nullable": true
          },
          "RegistrationConfirmed": {
            "type": "boolean",
            "description": "An optional field for clients to use at their discretion to accommodate scenarios in which customer profile verification is performed.",
            "nullable": true
          },
          "CustomerType": {
            "maxLength": 100,
            "type": "string",
            "description": "An identifier used to classify a person by the type of customer. For example, Retail, Commercial, or Marketing",
            "nullable": true
          },
          "PreserveConsents": {
            "type": "boolean",
            "description": "Specifies whether to retain the contact element consents or deactivate them. \r\nTo retain the contact element consents, set the value as True. If set to False, the contact element consents will be deactivated. \r\nThis setting defaults to True, if not specified.",
            "nullable": true
          },
          "PreservePreferences": {
            "type": "boolean",
            "description": "Specifies whether to retain the preferences or deactivate them. \r\nTo retain the preferences, set the value as True. If set to False, the preferences will be deactivated. \r\nThis setting defaults to True, if not specified.",
            "nullable": true
          },
          "CustomerName": {
            "$ref": "#/components/schemas/Profiles.REST.Core.Models.CustomerName"
          },
          "Consents": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.Import.BulkCustomerConsent"
            },
            "nullable": true
          },
          "ProfilePreferences": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.Import.BulkProfilePreference"
            },
            "nullable": true
          },
          "AlternateIds": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.Import.BulkAlternateIdEntry"
            },
            "nullable": true
          },
          "Addresses": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.Import.BulkAddressPreference"
            },
            "nullable": true
          },
          "PhoneNumbers": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.Import.BulkPhoneNumberPreference"
            },
            "nullable": true
          },
          "Emails": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.Import.BulkEmailPreference"
            },
            "nullable": true
          },
          "Groups": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.Import.BulkGroupEntry"
            },
            "nullable": true
          },
          "ProfileTags": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.Import.BulkTag"
            },
            "nullable": true
          },
          "CustomFields": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.Import.BulkCustomFieldValue"
            },
            "nullable": true
          },
          "Exceptions": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.Import.ExceptionsDefinition"
            },
            "nullable": true
          },
          "ReasonCode": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.Models.Import.ExceptionsDefinition": {
        "type": "object",
        "properties": {
          "ErrorMessage": {
            "type": "string",
            "description": "Detailed error message",
            "nullable": true
          },
          "ErrorCode": {
            "type": "string",
            "description": "Possiblenow defined error code",
            "nullable": true
          },
          "ErrorField": {
            "type": "string",
            "description": "Name of the field that contains the error",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.Models.Import.InitiateBulkImport": {
        "required": [
          "Name"
        ],
        "type": "object",
        "properties": {
          "Name": {
            "maxLength": 100,
            "minLength": 1,
            "type": "string",
            "description": "This is the name that the user chooses for the bulk import.  \r\nWe recommend using an easy to identify string that can be used to find and track the import."
          },
          "DataStageDuration": {
            "maximum": 10,
            "minimum": 0,
            "type": "integer",
            "description": "Determines the number of days for retaining staged data before it is  permanently deleted.  Use this attribute if you \r\nrequire the data you are staging to be stored for a specified length of time for auditing purposes.  \r\nThe staged data can exceed the length of time that the access token is active, however the data will not be \r\naccessible to the user through an API or to execute in an import.",
            "format": "int32"
          },
          "ImportAction": {
            "type": "string",
            "description": "Specifies the type of action to be performed during the bulk import operation. You have two options to choose from: Add (default) and Delete.",
            "nullable": true
          },
          "MatchCriteria": {
            "type": "string",
            "description": "In the absence of a profile id a field name can be inserted in this value to update a specific profile.  \r\nUse this setting when a standard profile ID is not used to identify a profile.  For instance, if a field \"AlternateID\" \r\nis used to identify a profile, use the term \"\"AlternateIDType\"\" in this field.  Used in conjunction with MatchValue defined below.",
            "nullable": true
          },
          "MatchValue": {
            "type": "string",
            "description": "This is the value that should be matched with the Match Criteria above to update a specific profile.  \r\nUse this setting when a standard profile ID is not used to identify a profile.  For instance, if a field \"AlternateID\" \r\nwith a type of XYZ1 is used to identify a profile, put the value of \"XYZ1\" in this field to identify what type is \r\nbeing searched for to identify the profile.  Used in conjunction with MatchCriteria defined above.",
            "nullable": true
          },
          "RefreshAlternateIds": {
            "type": "boolean",
            "description": "If true, existing AlternateIds that are NOT included in the import, will be deactivated.  \r\nThe boolean value for RefreshAlternateIds that was defined in the initiate request is what will be returned."
          },
          "RefreshContacts": {
            "type": "boolean",
            "description": "If true, existing profile contact elements that are NOT included in the import, will be deactivated along with any \r\npreferences associated with them.  The boolean value for RefreshContacts that was defined in the initiate request is \r\nwhat will be returned."
          },
          "RefreshCustomFields": {
            "type": "boolean",
            "description": "If true, existing CustomFields that are NOT included in the import, will be deleted.  \r\nThe boolean value for RefreshCustomFields that was defined in the initiate request is what will be returned."
          },
          "RefreshGroups": {
            "type": "boolean",
            "description": "If true, existing Groups that are NOT included in the import, will be deactivated.  \r\nThe boolean value for RefreshGroups that was defined in the initiate request is what will be returned."
          },
          "RefreshTags": {
            "type": "boolean",
            "description": "If true, existing Tags that are NOT included in the import, will be deleted.  \r\nThe boolean value for RefreshTags that was defined in the initiate request is what will be returned."
          },
          "AllowPriorConsents": {
            "type": "boolean",
            "description": "If true, an older version of a consent can be added to a profile with any status, SO LONG AS a newer version of the \r\nconsent doesn't already exist on the profile, regardless of locale\r\nThe boolean value for AllowPriorConsents that was defined in the initiate request is what will be returned."
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.Models.Import.InitiateBulkImportResponse": {
        "required": [
          "Name"
        ],
        "type": "object",
        "properties": {
          "Name": {
            "maxLength": 100,
            "minLength": 1,
            "type": "string",
            "description": "This is the name that the user chooses for the bulk import.  \r\nWe recommend using an easy to identify string that can be used to find and track the import."
          },
          "DataStageDuration": {
            "maximum": 10,
            "minimum": 0,
            "type": "integer",
            "description": "Determines the number of days for retaining staged data before it is  permanently deleted.  Use this attribute if you \r\nrequire the data you are staging to be stored for a specified length of time for auditing purposes.  \r\nThe staged data can exceed the length of time that the access token is active, however the data will not be \r\naccessible to the user through an API or to execute in an import.",
            "format": "int32"
          },
          "ImportAction": {
            "type": "string",
            "description": "Specifies the type of action to be performed during the bulk import operation. You have two options to choose from: Add (default) and Delete.",
            "nullable": true
          },
          "MatchCriteria": {
            "type": "string",
            "description": "In the absence of a profile id a field name can be inserted in this value to update a specific profile.  \r\nUse this setting when a standard profile ID is not used to identify a profile.  For instance, if a field \"AlternateID\" \r\nis used to identify a profile, use the term \"\"AlternateIDType\"\" in this field.  Used in conjunction with MatchValue defined below.",
            "nullable": true
          },
          "MatchValue": {
            "type": "string",
            "description": "This is the value that should be matched with the Match Criteria above to update a specific profile.  \r\nUse this setting when a standard profile ID is not used to identify a profile.  For instance, if a field \"AlternateID\" \r\nwith a type of XYZ1 is used to identify a profile, put the value of \"XYZ1\" in this field to identify what type is \r\nbeing searched for to identify the profile.  Used in conjunction with MatchCriteria defined above.",
            "nullable": true
          },
          "RefreshAlternateIds": {
            "type": "boolean",
            "description": "If true, existing AlternateIds that are NOT included in the import, will be deactivated.  \r\nThe boolean value for RefreshAlternateIds that was defined in the initiate request is what will be returned."
          },
          "RefreshContacts": {
            "type": "boolean",
            "description": "If true, existing profile contact elements that are NOT included in the import, will be deactivated along with any \r\npreferences associated with them.  The boolean value for RefreshContacts that was defined in the initiate request is \r\nwhat will be returned."
          },
          "RefreshCustomFields": {
            "type": "boolean",
            "description": "If true, existing CustomFields that are NOT included in the import, will be deleted.  \r\nThe boolean value for RefreshCustomFields that was defined in the initiate request is what will be returned."
          },
          "RefreshGroups": {
            "type": "boolean",
            "description": "If true, existing Groups that are NOT included in the import, will be deactivated.  \r\nThe boolean value for RefreshGroups that was defined in the initiate request is what will be returned."
          },
          "RefreshTags": {
            "type": "boolean",
            "description": "If true, existing Tags that are NOT included in the import, will be deleted.  \r\nThe boolean value for RefreshTags that was defined in the initiate request is what will be returned."
          },
          "AllowPriorConsents": {
            "type": "boolean",
            "description": "If true, an older version of a consent can be added to a profile with any status, SO LONG AS a newer version of the \r\nconsent doesn't already exist on the profile, regardless of locale\r\nThe boolean value for AllowPriorConsents that was defined in the initiate request is what will be returned."
          },
          "AccessToken": {
            "type": "integer",
            "description": "Token created by the initiate method that will be used to stage, execute, and retrieve import status and failed records.",
            "format": "int32"
          },
          "Status": {
            "type": "string",
            "description": "Returns the current state of the import. \"Initiated\", \"Staging\", \"Queued\", \"Processing\", \"Completed\", or \"Failed\"",
            "nullable": true
          },
          "Expires": {
            "type": "string",
            "description": "This is the date when the access token generated from the initiate step of your import will expire.  \r\nThe amount of time an access token is active is configurable in a customer's environment but not through the user interface.  \r\nOnce an access token expires it cannot be used again for bulk import functions.",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.Models.Import.StageBulkImport": {
        "type": "object",
        "properties": {
          "UserProfilePreferences": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.Import.BulkUserProfilePreference"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.Models.LocalizedConsentField": {
        "required": [
          "ConsentLanguage",
          "Locale",
          "Name"
        ],
        "type": "object",
        "properties": {
          "Locale": {
            "maxLength": 15,
            "minLength": 1,
            "type": "string"
          },
          "Name": {
            "maxLength": 50,
            "minLength": 1,
            "type": "string"
          },
          "Description": {
            "maxLength": 255,
            "type": "string",
            "default": "",
            "nullable": true
          },
          "ConsentLanguage": {
            "maxLength": 3000,
            "minLength": 1,
            "type": "string",
            "description": "The consent language"
          },
          "IsAssociatedWithProfiles": {
            "type": "boolean",
            "default": false
          },
          "IsActive": {
            "type": "boolean"
          },
          "Edited": {
            "$ref": "#/components/schemas/Profiles.REST.Core.Models.EditInfo"
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.Models.LocalizedDisplayName": {
        "required": [
          "DisplayName",
          "Locale"
        ],
        "type": "object",
        "properties": {
          "Locale": {
            "maxLength": 15,
            "minLength": 1,
            "type": "string",
            "description": "Locale ID (en_US: English, United States, en_GB: English, Great Britain..)"
          },
          "DisplayName": {
            "maxLength": 256,
            "minLength": 1,
            "type": "string",
            "description": "Name for this locale"
          },
          "ToolTipText": {
            "maxLength": 1024,
            "type": "string",
            "description": "Tooltip for this locale",
            "default": "",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.Models.LocalizedFieldSelectOption": {
        "required": [
          "DisplayText",
          "Locale"
        ],
        "type": "object",
        "properties": {
          "Locale": {
            "maxLength": 15,
            "minLength": 1,
            "type": "string",
            "description": "Locale ID (en_US: English, United States, en_GB: English, Great Britain..)"
          },
          "DisplayText": {
            "maxLength": 256,
            "minLength": 1,
            "type": "string",
            "description": "DisplayText of the field option"
          },
          "ToolTipText": {
            "maxLength": 1024,
            "type": "string",
            "description": "Tooltip for this locale",
            "default": "",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.Models.PhoneNumberPreference": {
        "required": [
          "PhoneNumber"
        ],
        "type": "object",
        "properties": {
          "PhoneType": {
            "maxLength": 100,
            "type": "string",
            "description": "Name of the Phone Type for which a phone number can be associated",
            "nullable": true
          },
          "PhoneNumber": {
            "maxLength": 50,
            "minLength": 1,
            "type": "string",
            "description": "Phone Number on the Profile"
          },
          "PhoneNumberNumeric": {
            "type": "integer",
            "description": "A read-only field that stores the numeric version of the phone number.",
            "format": "int64"
          },
          "IsDefault": {
            "type": "boolean",
            "description": "Determines if it’s the default Phone on the Profile. Only one Phone can be set as default for each Profile.",
            "nullable": true
          },
          "Consents": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.CustomerConsent"
            },
            "nullable": true
          },
          "IsMobile": {
            "type": "boolean",
            "description": "Determines if it’s a mobile phone number.  Defaults to false",
            "nullable": true
          },
          "IsActive": {
            "type": "boolean",
            "description": "Defines whether the item is Active or Inactive."
          },
          "Edited": {
            "$ref": "#/components/schemas/Profiles.REST.Core.Models.EditInfo"
          },
          "IsModified": {
            "type": "boolean"
          },
          "PhoneTypeLink": {
            "type": "integer",
            "format": "int32"
          },
          "SysStartTime": {
            "type": "string",
            "format": "date-time"
          },
          "SysEndTime": {
            "type": "string",
            "format": "date-time"
          },
          "SendingToDB": {
            "type": "boolean"
          },
          "PhonePreferences": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.ProfilePreference"
            },
            "nullable": true
          },
          "MissingRequiredConsents": {
            "type": "boolean"
          },
          "IsHistoryEndPoint": {
            "type": "boolean"
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.Models.PhoneNumberTypeEntry": {
        "required": [
          "LocalizedFields",
          "TypeName"
        ],
        "type": "object",
        "properties": {
          "TypeName": {
            "maxLength": 100,
            "minLength": 1,
            "type": "string",
            "description": "The name given to the type."
          },
          "LocalizedFields": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/PossibleNow.PNEnterprise.Domain2.Core.Models.LocalizedField"
            },
            "description": "A collection of a locale specific name/value pair of Strings used to support localization"
          },
          "IsDefault": {
            "type": "boolean",
            "description": "Determines if it is the Default Type"
          },
          "IsActive": {
            "type": "boolean",
            "description": "Defines whether the item is Active or Inactive"
          },
          "TypeId": {
            "type": "integer",
            "description": "A read-only field that uniquely identifies the Type",
            "format": "int32"
          },
          "Edited": {
            "$ref": "#/components/schemas/Profiles.REST.Core.Models.EditInfo"
          },
          "RequiredContactConsents": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.RequiredContactConsent"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.Models.PhoneNumberTypeEntryList": {
        "type": "object",
        "properties": {
          "PhoneTypes": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.PhoneNumberTypeEntry"
            },
            "description": "A collection of Phone Types that can be associated with a Profile.",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.Models.Picklist": {
        "required": [
          "FieldSelectOptions",
          "Name"
        ],
        "type": "object",
        "properties": {
          "Id": {
            "type": "integer",
            "description": "A read-only field that uniquely identifies the picklist",
            "format": "int32"
          },
          "Edited": {
            "$ref": "#/components/schemas/Profiles.REST.Core.Models.EditInfo"
          },
          "Name": {
            "maxLength": 100,
            "minLength": 1,
            "type": "string",
            "description": "Name of the picklist"
          },
          "Description": {
            "maxLength": 256,
            "type": "string",
            "description": "Description of the picklist",
            "default": "",
            "nullable": true
          },
          "IsActive": {
            "type": "boolean",
            "description": "Status of the field select option\r\n1(Active) or 0(Inactive)"
          },
          "FieldSelectOptions": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.FieldSelectOption"
            },
            "description": "Field select options defined for the picklist"
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.Models.PicklistList": {
        "type": "object",
        "properties": {
          "Picklists": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.Picklist"
            },
            "description": "A collection of Picklists that can be associated with a Profile",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.Models.PostConsentTypeEntry": {
        "required": [
          "TypeName",
          "Versions"
        ],
        "type": "object",
        "properties": {
          "TypeName": {
            "maxLength": 100,
            "minLength": 1,
            "type": "string",
            "description": "Name of the type"
          },
          "ChannelId": {
            "type": "string",
            "description": "The optional identifier of the Channel. \r\nPhone, Text/SMS, Email, and Mail are the channel ID values.",
            "default": "",
            "nullable": true
          },
          "IsActive": {
            "type": "boolean",
            "description": "Defines whether the item is Active or Inactive"
          },
          "TypeId": {
            "type": "integer",
            "description": "A read-only field that uniquely identifies the Type",
            "format": "int32"
          },
          "Edited": {
            "$ref": "#/components/schemas/Profiles.REST.Core.Models.EditInfo"
          },
          "Versions": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.ConsentVersionEntry"
            },
            "description": "List of consent versions"
          },
          "Attributes": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.PNEModels.AttributeEntryBase"
            },
            "description": "List of consent attributes",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.Models.PostConsentTypeEntryList": {
        "type": "object",
        "properties": {
          "ConsentTypes": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.PostConsentTypeEntry"
            },
            "description": "A collection of Consent Types that can be associated with a Profile.",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.Models.PreferenceRelationships": {
        "required": [
          "Id",
          "ParentFilter"
        ],
        "type": "object",
        "properties": {
          "Id": {
            "maxLength": 256,
            "minLength": 1,
            "type": "string",
            "description": "Preference Relationship ID"
          },
          "ParentFilter": {
            "maxLength": 50,
            "minLength": 1,
            "type": "string",
            "description": "Parent Filter ID"
          },
          "IsActive": {
            "type": "boolean",
            "description": "Defines whether the relationship is Active or Inactive"
          },
          "ChildFilters": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.PropagationFilter"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.Models.ProfileExportSegmentGroup": {
        "required": [
          "LastModifiedDate"
        ],
        "type": "object",
        "properties": {
          "SegmentGroupLink": {
            "type": "integer",
            "format": "int32"
          },
          "SegmentGroupName": {
            "type": "string",
            "nullable": true
          },
          "Segments": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.SegmentGroupSegment"
            },
            "nullable": true
          },
          "Types": {
            "type": "string",
            "nullable": true
          },
          "LastModifiedDate": {
            "type": "string",
            "format": "date-time"
          },
          "ViewOnly": {
            "type": "boolean"
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.Models.ProfileExportSegmentGroupsResult": {
        "type": "object",
        "properties": {
          "ProfileExportSegmentGroups": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.ProfileExportSegmentGroup"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.Models.ProfileExportSegments": {
        "required": [
          "ExportType",
          "LastModifiedDate",
          "SegmentName"
        ],
        "type": "object",
        "properties": {
          "SegmentLink": {
            "type": "integer",
            "format": "int32"
          },
          "SegmentName": {
            "type": "string"
          },
          "ExportType": {
            "type": "string"
          },
          "SegmentGroups": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.SegmentGroups"
            },
            "nullable": true
          },
          "LastModifiedDate": {
            "type": "string",
            "format": "date-time"
          },
          "ViewOnly": {
            "type": "boolean"
          },
          "Rows": {
            "type": "integer",
            "format": "int32"
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.Models.ProfileExportSegmentsResult": {
        "type": "object",
        "properties": {
          "ProfileExportSegments": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.ProfileExportSegments"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.Models.ProfilePreference": {
        "required": [
          "FilterId",
          "PreferenceType"
        ],
        "type": "object",
        "properties": {
          "ProgramId": {
            "type": "string",
            "description": "The unique identifier of a Program",
            "nullable": true
          },
          "ChannelId": {
            "type": "string",
            "description": "The unique identifier of the Channel. \r\nPhone, Text/SMS, Email, Mail, and Solicit are the channel ID values.",
            "nullable": true
          },
          "ConsentAssociations": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.ConsentAssociation"
            },
            "nullable": true
          },
          "MatchType": {
            "type": "string",
            "description": "The Match Type indicates if the preference was Expressed or Implied. \r\nThis only applies if your account has the Preference Propagation feature enabled.",
            "nullable": true
          },
          "ReasonCode": {
            "type": "string",
            "description": "Represents the reason for deactivation as specified on a preference deactivation request.",
            "nullable": true
          },
          "ExpirationDate": {
            "type": "string",
            "description": "The computed date when the preference will expire based on the preference expiration \r\nduration configured on the Filter.If there is no expiration setup, the system will output a blank value.",
            "default": "",
            "nullable": true
          },
          "PreferenceStatus": {
            "type": "string",
            "description": "The status of the preference, Active or Expired.",
            "nullable": true
          },
          "LastModifiedDate": {
            "type": "string",
            "description": "The date and time when the preference was last updated in the system. This is a system generated date.",
            "nullable": true
          },
          "UserId": {
            "type": "string",
            "description": "The ID of the user or system that recorded the preference",
            "nullable": true
          },
          "SourceId": {
            "type": "string",
            "description": "The ID of the Source Group associated with the user that recorded the preference.",
            "nullable": true
          },
          "FilterId": {
            "maxLength": 50,
            "minLength": 1,
            "type": "string",
            "description": "The unique identifier of a Filter (preference option)."
          },
          "PreferenceType": {
            "$ref": "#/components/schemas/Profiles.REST.Core.Codebase.GlobalPN+PreferenceTypes"
          },
          "FrequencyId": {
            "maxLength": 20,
            "type": "string",
            "description": "The communication frequency associated with the preference. \r\nFor preferences with no frequency value, the system will output \r\nthe default frequency value associated with the Filter.",
            "nullable": true
          },
          "Attributes": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.Attribute"
            },
            "description": "A collection of additional data elements that you want to store with the preference",
            "nullable": true
          },
          "PreferenceAttributes": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.Attribute"
            },
            "nullable": true,
            "readOnly": true
          },
          "CustomerDate": {
            "type": "string",
            "description": "DateTime when the preference was collected.",
            "nullable": true
          },
          "DropReasonNbr": {
            "type": "integer",
            "description": "This is an internal field that is used to provide the reason the preference was archived from the Profile",
            "format": "int32",
            "default": -1
          },
          "MissingRequiredConsents": {
            "type": "boolean"
          },
          "IsHistoryEndPoint": {
            "type": "boolean"
          },
          "SendingToDB": {
            "type": "boolean"
          },
          "IsActive": {
            "type": "boolean"
          },
          "FilterHeaderLink": {
            "type": "integer",
            "format": "int32"
          },
          "FilterLink": {
            "type": "integer",
            "format": "int32"
          },
          "FrequencyLink": {
            "type": "integer",
            "format": "int32"
          },
          "IsDNStatus": {
            "type": "boolean"
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.Models.ProfilePreferenceHistory": {
        "type": "object",
        "properties": {
          "ProfileId": {
            "type": "integer",
            "description": "Id associated with the Profile",
            "format": "int32"
          },
          "IsActive": {
            "type": "boolean",
            "description": "Defines whether the item is Active or Inactive",
            "nullable": true
          },
          "Edited": {
            "$ref": "#/components/schemas/Profiles.REST.Core.Models.EditInfo"
          },
          "RegistrationConfirmed": {
            "type": "boolean",
            "description": "An optional field for clients to use at their discretion to accommodate scenarios in which customer profile verification is performed.",
            "nullable": true
          },
          "CustomerType": {
            "type": "string",
            "description": "An identifier used to classify a person by the type of customer. For example: Retail, Commercial, or Marketing",
            "nullable": true
          },
          "PreserveConsents": {
            "type": "boolean",
            "description": "Specifies whether to retain the contact element consents or deactivate them. \r\nTo retain the contact element consents, set the value as True. If set to False, the contact element consents will be deactivated. \r\nThis setting defaults to True, if not specified.",
            "nullable": true
          },
          "PreservePreferences": {
            "type": "boolean",
            "description": "Specifies whether to retain the preferences or deactivate them. \r\nTo retain the preferences, set the value as True. If set to False, the preferences will be deactivated. \r\nThis setting defaults to True, if not specified.",
            "nullable": true
          },
          "CustomerName": {
            "$ref": "#/components/schemas/Profiles.REST.Core.Models.CustomerName"
          },
          "DefaultLocale": {
            "type": "string",
            "description": "Default Locale for the profile.",
            "nullable": true
          },
          "UpdateStatus": {
            "type": "string",
            "description": "\"Complete\" if the record has been processed otherwise \"Pending Update\"",
            "nullable": true
          },
          "ReasonCode": {
            "maxLength": 255,
            "type": "string",
            "description": "An optional parameter that can be passed when deactivating a profile.",
            "nullable": true
          },
          "AlternateIds": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.AlternateIdEntry"
            },
            "description": "A collection of Additional unique identifiers that can be associated with a profile.\r\nFor example, customer identifiers from other applications such as Salesforce, Marketo or Facebook can be stored as AlternateIds.",
            "nullable": true
          },
          "Addresses": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.AddressPreference"
            },
            "description": "A collection of mailing addresses associated with the profile.",
            "nullable": true
          },
          "Emails": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.EmailPreference"
            },
            "description": "A collection of email addresses associated with the profile.",
            "nullable": true
          },
          "PhoneNumbers": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.PhoneNumberPreference"
            },
            "description": "A collection of phone numbers associated with the profile.",
            "nullable": true
          },
          "ProfilePreferences": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.ProfilePreference"
            },
            "description": "A collection of preferences associated with the User Profile.  \r\nProfile preferences are tied to the user’s profile.\r\nThese preferences are not associated with any contact element on the profile.",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.Models.ProfilesSegmentGroupPermission": {
        "type": "object",
        "properties": {
          "UserGroupLink": {
            "type": "integer",
            "format": "int32"
          },
          "CanView": {
            "type": "boolean"
          },
          "CanEdit": {
            "type": "boolean"
          },
          "CanExecute": {
            "type": "boolean"
          },
          "Special": {
            "type": "integer",
            "format": "int32"
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.Models.ProfilesSegmentPermission": {
        "type": "object",
        "properties": {
          "UserGroupLink": {
            "type": "integer",
            "format": "int32"
          },
          "CanView": {
            "type": "boolean"
          },
          "CanEdit": {
            "type": "boolean"
          },
          "CanExecute": {
            "type": "boolean"
          },
          "Special": {
            "type": "integer",
            "format": "int32"
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.Models.PropagationFilter": {
        "required": [
          "FilterId"
        ],
        "type": "object",
        "properties": {
          "FilterId": {
            "maxLength": 50,
            "minLength": 1,
            "type": "string",
            "description": "Child Filter ID"
          },
          "PropagateOptins": {
            "type": "boolean",
            "description": "Defines whether the parent filter's opt ins propagate to child"
          },
          "OverrideOptins": {
            "type": "boolean",
            "description": "Defines whether the parent filter's opt ins override the child's opt out"
          },
          "PropagateOptouts": {
            "type": "boolean",
            "description": "Defines whether the parent filter's opt outs propagate to child"
          },
          "OverrideOptouts": {
            "type": "boolean",
            "description": "Defines whether the parent filter's opt outs override the child's opt ins"
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.Models.RequiredConsent": {
        "required": [
          "TypeName"
        ],
        "type": "object",
        "properties": {
          "TypeName": {
            "maxLength": 100,
            "minLength": 1,
            "type": "string"
          },
          "DisplayOrder": {
            "type": "integer",
            "format": "int32"
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.Models.RequiredContactConsent": {
        "required": [
          "TypeName"
        ],
        "type": "object",
        "properties": {
          "TypeName": {
            "maxLength": 100,
            "minLength": 1,
            "type": "string"
          },
          "DisplayOrder": {
            "type": "integer",
            "format": "int32"
          },
          "RequireGrantedOrNotSetOnAdd": {
            "type": "boolean"
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.Models.SearchConsentAttribute": {
        "required": [
          "Key"
        ],
        "type": "object",
        "properties": {
          "Key": {
            "minLength": 1,
            "type": "string",
            "description": "The key to identify the preferece attribute."
          },
          "Value": {
            "type": "string",
            "description": "The value of the attribute",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.Models.SearchCustomFieldSelectListValue": {
        "required": [
          "Name"
        ],
        "type": "object",
        "properties": {
          "Name": {
            "maxLength": 94,
            "minLength": 1,
            "type": "string",
            "description": "Name of the custom field"
          },
          "Value": {
            "maxLength": 4000,
            "type": "string",
            "description": "Value associated with the custom field.\r\n\r\nThe Custom Field’s Type determines the type of values the custom field can store.\r\nA custom field of Type DateTime can only store \"DateTime\" and \"Date\" values, \r\nwhereas a Custom Field of Type Numeric only stores numerical data (positive numbers, negative numbers, and numbers with and without decimals).",
            "nullable": true
          },
          "OperatorId": {
            "$ref": "#/components/schemas/Profiles.REST.Core.Codebase.GlobalPN+CustomFieldOperators"
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.Models.SearchCustomFieldValue": {
        "required": [
          "Name"
        ],
        "type": "object",
        "properties": {
          "Name": {
            "maxLength": 94,
            "minLength": 1,
            "type": "string",
            "description": "Name of the custom field"
          },
          "Value": {
            "maxLength": 4000,
            "type": "string",
            "description": "Value associated with the custom field.\r\n\r\nThe Custom Field’s Type determines the type of values the custom field can store.\r\nA custom field of Type DateTime can only store \"DateTime\" and \"Date\" values, \r\nwhereas a Custom Field of Type Numeric only stores numerical data (positive numbers, negative numbers, and numbers with and without decimals).",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.Models.SearchPreferenceAttribute": {
        "required": [
          "Key"
        ],
        "type": "object",
        "properties": {
          "Key": {
            "minLength": 1,
            "type": "string",
            "description": "The key to identify the preferece attribute."
          },
          "Value": {
            "type": "string",
            "description": "The value of the attribute",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.Models.SegmentGroupSegment": {
        "type": "object",
        "properties": {
          "SegmentName": {
            "type": "string",
            "nullable": true
          },
          "SegmentLink": {
            "type": "integer",
            "format": "int32"
          },
          "RowOperator": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.Models.SegmentGroups": {
        "type": "object",
        "properties": {
          "SegmentGroupName": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.Models.SegmentRequestInfo": {
        "type": "object",
        "properties": {
          "LastDateTime": {
            "type": "string",
            "description": "<br>\r\n            Optional starting datetime that preference updates will be retrieved from\r\n            \r\n<br>\r\n  <br />The LastDateTime support values up to the millisecond. The millisecond value will always be rounded to the nearest boundary \r\n            to avoid records being skipped. For example, 000 through 002 becomes 003, 003 through 006 becomes 007, \r\n            and 007 through 009 becomes 000 of the next higher value.\r\n            ",
            "nullable": true
          },
          "MatchCriteria": {
            "type": "string",
            "nullable": true
          },
          "MatchType": {
            "type": "string",
            "nullable": true
          },
          "Values": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          }
        },
        "additionalProperties": false,
        "description": "Used to pass optional LastDateTime and Match criteria"
      },
      "Profiles.REST.Core.Models.Tag": {
        "required": [
          "Name"
        ],
        "type": "object",
        "properties": {
          "Name": {
            "maxLength": 100,
            "minLength": 1,
            "type": "string",
            "description": "Tag Name"
          },
          "SendingToDB": {
            "type": "boolean"
          },
          "IsActive": {
            "type": "boolean"
          },
          "ProfileTagLink": {
            "type": "integer",
            "format": "int32"
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.Models.TagCount": {
        "type": "object",
        "additionalProperties": false
      },
      "Profiles.REST.Core.Models.TagCountList": {
        "type": "object",
        "properties": {
          "TagCounts": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.TagCount"
            },
            "description": "A collection of Tag Counts that can be associated with a Profile.",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.Models.UpdateRule": {
        "type": "object",
        "properties": {
          "Id": {
            "type": "integer",
            "format": "int32"
          },
          "Name": {
            "maxLength": 100,
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.Models.UpdateRuleList": {
        "type": "object",
        "properties": {
          "UpdateRules": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.UpdateRule"
            },
            "description": "A collection of Update Rules that can be associated with a Profile",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.Models.UserDetail": {
        "required": [
          "Email",
          "FirstName",
          "LastName",
          "SourceGroupID",
          "UserGroups",
          "UserName"
        ],
        "type": "object",
        "properties": {
          "UserName": {
            "minLength": 1,
            "type": "string"
          },
          "FirstName": {
            "minLength": 1,
            "type": "string"
          },
          "LastName": {
            "minLength": 1,
            "type": "string"
          },
          "Email": {
            "minLength": 1,
            "type": "string"
          },
          "Phone": {
            "maxLength": 15,
            "minLength": 0,
            "type": "string",
            "nullable": true
          },
          "Description": {
            "maxLength": 2000,
            "minLength": 0,
            "type": "string",
            "nullable": true
          },
          "UserGroups": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.ConfigUserGroupIDOnly"
            }
          },
          "SourceGroupID": {
            "minLength": 1,
            "type": "string"
          },
          "DefaultLandingPage": {
            "type": "string",
            "description": "Used by Profile accounts to route users to a specific page after logging in.  \r\nOptions include Dashboard, ProfileSearch, DataExport",
            "default": "Dashboard",
            "nullable": true
          },
          "DefaultLandingPageTypeNbr": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "IsActive": {
            "type": "boolean",
            "default": true
          },
          "IsSSO": {
            "type": "boolean",
            "description": "Determines if a new user is an SSO user in which a complete user registration email will not be sent if this value is true.\r\nNOTE: This property is currently only used for the creation of users and will not reflect an SSO status of an existing user nor change an existing user.",
            "default": false
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.Models.UserProfilePreference": {
        "type": "object",
        "properties": {
          "ProfileId": {
            "type": "integer",
            "description": "Id associated with the Profile",
            "format": "int32"
          },
          "IsActive": {
            "type": "boolean",
            "description": "Defines whether the item is Active or Inactive",
            "nullable": true
          },
          "Edited": {
            "$ref": "#/components/schemas/Profiles.REST.Core.Models.EditInfo"
          },
          "RegistrationConfirmed": {
            "type": "boolean",
            "description": "An optional field for clients to use at their discretion to accommodate scenarios in which customer profile verification is performed.",
            "nullable": true
          },
          "CustomerType": {
            "type": "string",
            "description": "An identifier used to classify a person by the type of customer. For example: Retail, Commercial, or Marketing",
            "nullable": true
          },
          "PreserveConsents": {
            "type": "boolean",
            "description": "Specifies whether to retain the contact element consents or deactivate them. \r\nTo retain the contact element consents, set the value as True. If set to False, the contact element consents will be deactivated. \r\nThis setting defaults to True, if not specified.",
            "nullable": true
          },
          "PreservePreferences": {
            "type": "boolean",
            "description": "Specifies whether to retain the preferences or deactivate them. \r\nTo retain the preferences, set the value as True. If set to False, the preferences will be deactivated. \r\nThis setting defaults to True, if not specified.",
            "nullable": true
          },
          "CustomerName": {
            "$ref": "#/components/schemas/Profiles.REST.Core.Models.CustomerName"
          },
          "DefaultLocale": {
            "type": "string",
            "description": "Default Locale for the profile.",
            "nullable": true
          },
          "UpdateStatus": {
            "type": "string",
            "description": "\"Complete\" if the record has been processed otherwise \"Pending Update\"",
            "nullable": true
          },
          "ReasonCode": {
            "maxLength": 255,
            "type": "string",
            "description": "An optional parameter that can be passed when deactivating a profile.",
            "nullable": true
          },
          "AlternateIds": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.AlternateIdEntry"
            },
            "description": "A collection of Additional unique identifiers that can be associated with a profile.\r\nFor example, customer identifiers from other applications such as Salesforce, Marketo or Facebook can be stored as AlternateIds.",
            "nullable": true
          },
          "Addresses": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.AddressPreference"
            },
            "description": "A collection of mailing addresses associated with the profile.",
            "nullable": true
          },
          "Emails": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.EmailPreference"
            },
            "description": "A collection of email addresses associated with the profile.",
            "nullable": true
          },
          "PhoneNumbers": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.PhoneNumberPreference"
            },
            "description": "A collection of phone numbers associated with the profile.",
            "nullable": true
          },
          "ProfilePreferences": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.ProfilePreference"
            },
            "description": "A collection of preferences associated with the User Profile.  \r\nProfile preferences are tied to the user’s profile.\r\nThese preferences are not associated with any contact element on the profile.",
            "nullable": true
          },
          "Consents": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.CustomerConsent"
            },
            "description": "A collection of consents associated with the User Profile.",
            "nullable": true
          },
          "CustomFields": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.CustomFieldValue"
            },
            "description": "A collection of Custom Fields associated with the profile.",
            "nullable": true
          },
          "Groups": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.GroupEntry"
            },
            "description": "A collection of Groups associated with the profile.",
            "nullable": true
          },
          "ProfileTags": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.Tag"
            },
            "description": "A collection of Tags associated with the profile.",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.Models.UserProfilePreferenceList": {
        "type": "object",
        "additionalProperties": false
      },
      "Profiles.REST.Core.PNEModels.Attribute": {
        "type": "object",
        "properties": {
          "Link": {
            "type": "integer",
            "format": "int32"
          },
          "Key": {
            "maxLength": 50,
            "type": "string",
            "nullable": true
          },
          "Value": {
            "maxLength": 256,
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.PNEModels.AttributeConstraint": {
        "type": "object",
        "properties": {
          "ConstraintType": {
            "type": "string",
            "nullable": true
          },
          "Detail": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.PNEModels.AttributeEntry": {
        "required": [
          "ID",
          "IsRequired"
        ],
        "type": "object",
        "properties": {
          "ID": {
            "maxLength": 20,
            "minLength": 1,
            "type": "string"
          },
          "DisplayOrder": {
            "type": "integer",
            "format": "int32"
          },
          "IsRequired": {
            "type": "boolean"
          },
          "Link": {
            "type": "integer",
            "format": "int32"
          },
          "AttributeType": {
            "type": "string",
            "nullable": true
          },
          "AttributeConstraints": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.PNEModels.AttributeConstraint"
            },
            "nullable": true
          },
          "DisplayTextLocales": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/PossibleNow.PNEnterprise.Domain2.Core.Models.LocalizedField"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.PNEModels.AttributeEntryBase": {
        "required": [
          "ID",
          "IsRequired"
        ],
        "type": "object",
        "properties": {
          "ID": {
            "maxLength": 20,
            "minLength": 1,
            "type": "string"
          },
          "DisplayOrder": {
            "type": "integer",
            "format": "int32"
          },
          "IsRequired": {
            "type": "boolean"
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.PNEModels.ChannelHeader": {
        "type": "object",
        "properties": {
          "Link": {
            "type": "integer",
            "format": "int32"
          },
          "ChannelID": {
            "maxLength": 7,
            "type": "string",
            "nullable": true
          },
          "ProgramID": {
            "maxLength": 50,
            "type": "string",
            "nullable": true
          },
          "ID": {
            "maxLength": 50,
            "type": "string",
            "nullable": true
          },
          "Name": {
            "maxLength": 100,
            "type": "string",
            "nullable": true
          },
          "Description": {
            "maxLength": 255,
            "type": "string",
            "nullable": true
          },
          "DefaultPreferenceValue": {
            "type": "integer",
            "format": "int32"
          },
          "DefaultLocaleID": {
            "maxLength": 15,
            "type": "string",
            "nullable": true
          },
          "CustomProperties": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.PNEModels.Attribute"
            },
            "nullable": true
          },
          "Locales": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.PNEModels.Locale"
            },
            "nullable": true
          },
          "FrequencyLocales": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.PNEModels.FrequencyLocale"
            },
            "nullable": true
          },
          "Attributes": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.PNEModels.AttributeEntry"
            },
            "nullable": true
          },
          "RequiredPreferenceConsents": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.Models.RequiredConsent"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.PNEModels.Frequency": {
        "type": "object",
        "properties": {
          "ID": {
            "maxLength": 20,
            "type": "string",
            "nullable": true
          },
          "DisplayName": {
            "maxLength": 50,
            "type": "string",
            "nullable": true
          },
          "Description": {
            "maxLength": 256,
            "type": "string",
            "nullable": true
          },
          "IsDefault": {
            "type": "boolean"
          },
          "DisplayOrder": {
            "type": "integer",
            "format": "int32"
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.PNEModels.FrequencyLocale": {
        "type": "object",
        "properties": {
          "ID": {
            "maxLength": 15,
            "type": "string",
            "nullable": true
          },
          "Frequencies": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.PNEModels.Frequency"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.PNEModels.Locale": {
        "type": "object",
        "properties": {
          "ID": {
            "maxLength": 15,
            "type": "string",
            "nullable": true
          },
          "DisplayTags": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.PNEModels.Attribute"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.PNEModels.Program": {
        "type": "object",
        "properties": {
          "Link": {
            "type": "integer",
            "format": "int32"
          },
          "ID": {
            "maxLength": 50,
            "type": "string",
            "nullable": true
          },
          "Name": {
            "maxLength": 100,
            "type": "string",
            "nullable": true
          },
          "Description": {
            "maxLength": 255,
            "type": "string",
            "nullable": true
          },
          "DefaultLocaleID": {
            "maxLength": 15,
            "type": "string",
            "nullable": true
          },
          "ProgramType": {
            "maxLength": 100,
            "type": "string",
            "nullable": true
          },
          "DisplayOrder": {
            "type": "integer",
            "format": "int32"
          },
          "CustomProperties": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.PNEModels.Attribute"
            },
            "nullable": true
          },
          "Locales": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.PNEModels.Locale"
            },
            "nullable": true
          },
          "Filters": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.PNEModels.ChannelHeader"
            },
            "nullable": true
          },
          "ReadOnly": {
            "type": "boolean"
          }
        },
        "additionalProperties": false
      },
      "Profiles.REST.Core.PNEModels.ProgramGroup": {
        "type": "object",
        "properties": {
          "Link": {
            "type": "integer",
            "format": "int32"
          },
          "ID": {
            "maxLength": 50,
            "type": "string",
            "nullable": true
          },
          "Name": {
            "maxLength": 100,
            "type": "string",
            "nullable": true
          },
          "Description": {
            "maxLength": 255,
            "type": "string",
            "nullable": true
          },
          "DefaultLocaleID": {
            "maxLength": 15,
            "type": "string",
            "nullable": true
          },
          "Locales": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.PNEModels.Locale"
            },
            "nullable": true,
            "readOnly": true
          },
          "ProgramGroups": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.PNEModels.ProgramGroup"
            },
            "nullable": true,
            "readOnly": true
          },
          "Programs": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.PNEModels.Program"
            },
            "nullable": true
          },
          "CustomProperties": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Profiles.REST.Core.PNEModels.Attribute"
            },
            "nullable": true,
            "readOnly": true
          }
        },
        "additionalProperties": false
      }
    }
  }
}