---
schema_version: "1"
id: 1a1c4fd5f97324fdc3079895dec61020d9e476a9cc447e12d17bd474f4a1e508
title: ArticleType
collection: legacydeveloper
version: current
locale: en-us
portal_url: https://docs.salesforce.com/legacydeveloper/current/en-us/api_meta/meta_articletype.md
canonical_url: https://developer.salesforce.com/docs/atlas.en-us.api_meta.meta/api_meta/meta_articletype.htm
source_site: developer.salesforce.com
content_type: documentation
content_hash: 0f6a5f60e11f7c6479eca508eb6de16aa67a88a148751b743339fa07b78335f8
description: Represents the metadata associated with an article type.
---
# ArticleType

Represents the metadata associated with an article type.

All articles in Salesforce Knowledge are assigned to an article type. An article's type determines the type of content it contains, its appearance, and which users can access it. For example, a simple FAQ article type can have two custom fields, Question and Answer, where article managers enter data when creating or updating FAQ articles. A more complex article type can have dozens of fields organized into several sections. Using layouts and templates, administrators can structure the article type in the most effective way for its particular content. User access to article types is controlled by permissions. For each article type, an administrator can grant “Create,” “Read,” “Edit,” or “Delete” permissions to users. For example, the article manager can allow internal users to read, create, and edit FAQ article types, but let partner users only read FAQs. See “[Knowledge Article Types](https://help.salesforce.com/s/articleView?id=service.knowledge_article_types_manage.htm&type=5&language=en_US)” in the Salesforce online help and [Knowledge](https://developer.salesforce.com/docs/atlas.en-us.264.0.api.meta/api/sforce_api_guidelines_knowledge.htm) in the SOAP API Developer Guide.

## Declarative Metadata File Suffix and Directory Location

An ArticleType is defined as a custom object and is stored in the objects folder. ArticleTypes have a suffix \_\_kav (instead of \_\_c for custom objects). ArticleType field names have a suffix of \_\_c like other custom objects, and must be dot-qualified with the name of the article type to which they belong. This is shown in the following sample package.xml file:

<?xml version="1.0" encoding="UTF-8"?>
<Package xmlns="http://soap.sforce.com/2006/04/metadata">
    <fullName\>articlefilemetadata</fullName\>
    <apiAccessLevel\>Unrestricted</apiAccessLevel\>
    <types\>
        <members\>newarticle\_\_kav.description\_\_c</members\>
        <name\>CustomField</name\>
    </types\>
    <types\>
        <members\>newarticle\_\_kav</members\>
        <name\>CustomObject</name\>
    </types\>
</Package\>

## Version

ArticleTypes are available in API version 19.0 and later.

## Fields

<table class="featureTable sort_table" summary="">



          <thead class="thead sorted" align="left">
            <tr>
              <th class="featureTableHeader  " id="d149018e125">Field Name</th>

              <th class="featureTableHeader  " id="d149018e128">Field Type</th>

              <th class="featureTableHeader  " id="d149018e131">Description</th>

            </tr>

          </thead>

          <tbody class="tbody">
            <tr>
              <td class="entry" headers="d149018e125" data-title="Field Name"><span class="keyword parmname">articleTypeChannel​Display</span></td>

              <td class="entry" headers="d149018e128" data-title="Field Type">articleTypeChannelDisplay</td>

              <td class="entry" headers="d149018e131" data-title="Description">Represents the article-type templates used to display an article
                in the various channels. See “<a class="xref" href="https://help.salesforce.com/s/articleView?id=service.knowledge_article_templates_create.htm&amp;type=5&amp;language=en_US" target="_blank">Article Type
                  Templates</a>” in the Salesforce online help.</td>

            </tr>

            <tr>
              <td class="entry" headers="d149018e125" data-title="Field Name"><span class="keyword parmname">deploymentStatus</span></td>

              <td class="entry" headers="d149018e128" data-title="Field Type">DeploymentStatus (<a class="xref" href="https://developer.salesforce.com/docs/atlas.en-us.api_meta.meta/api_meta/meta_objects_intro.htm#enumeration_title">enumeration</a> of type
                string)</td>

              <td class="entry" headers="d149018e131" data-title="Description">
                <p class="p">A string which represents the deployment status of a custom
                  object or field. Valid values are:</p>

                <ul class="ul bulletList">
                  <li class="li"><samp class="codeph nolang">InDevelopment</samp></li>

                  <li class="li"><samp class="codeph nolang">Deployed</samp></li>

                </ul>

              </td>

            </tr>

            <tr>
              <td class="entry" headers="d149018e125" data-title="Field Name"><span class="keyword parmname">description</span></td>

              <td class="entry" headers="d149018e128" data-title="Field Type">string</td>

              <td class="entry" headers="d149018e131" data-title="Description">A description of the article type. Maximum of 1000
                characters.</td>

            </tr>

            <tr>
              <td class="entry" headers="d149018e125" data-title="Field Name"><span class="keyword parmname">fields</span></td>

              <td class="entry" headers="d149018e128" data-title="Field Type"><a class="xref" href="https://developer.salesforce.com/docs/atlas.en-us.api_meta.meta/api_meta/customfield.htm" title="Represents the metadata associated with a field. Use this metadata type to create, update, or delete custom field definitions on standard, custom, and external objects or standard field definitions on standard objects.">CustomField[]</a></td>

              <td class="entry" headers="d149018e131" data-title="Description">Represents one or more fields in the article type.</td>

            </tr>

            <tr>
              <td class="entry" headers="d149018e125" data-title="Field Name"><span class="keyword parmname">gender</span></td>

              <td class="entry" headers="d149018e128" data-title="Field Type">Gender</td>

              <td class="entry" headers="d149018e131" data-title="Description">Indicates the gender of the noun that represents the object. This
                is used for languages where words need different treatment depending
                on their gender.</td>

            </tr>

            <tr>
              <td class="entry" headers="d149018e125" data-title="Field Name"><span class="keyword parmname">label</span></td>

              <td class="entry" headers="d149018e128" data-title="Field Type">string</td>

              <td class="entry" headers="d149018e131" data-title="Description">Label that represents the object throughout the Salesforce user
                interface.</td>

            </tr>

            <tr>
              <td class="entry" headers="d149018e125" data-title="Field Name"><span class="keyword parmname">pluralLabel</span></td>

              <td class="entry" headers="d149018e128" data-title="Field Type">string</td>

              <td class="entry" headers="d149018e131" data-title="Description">Plural version of the <span class="keyword parmname">label</span> value.</td>

            </tr>

            <tr>
              <td class="entry" headers="d149018e125" data-title="Field Name"><span class="keyword parmname">startsWith</span></td>

              <td class="entry" headers="d149018e128" data-title="Field Type">StartsWith (<a class="xref" href="https://developer.salesforce.com/docs/atlas.en-us.api_meta.meta/api_meta/meta_objects_intro.htm#enumeration_title">enumeration</a> of type
                string)</td>

              <td class="entry" headers="d149018e131" data-title="Description"><span class="ph" id="startsWith_desc"><a name="startsWith_desc"><!-- --></a>Indicates whether the noun starts with a
                  vowel, consonant, or is a special character. This is used for
                  languages where words need different treatment depending on the
                  first character. Valid values are listed in <a class="xref" href="https://developer.salesforce.com/docs/atlas.en-us.api_meta.meta/api_meta/meta_field_types.htm#startsWith_ul">StartsWith</a>.</span></td>

            </tr>

          </tbody>

        </table>

## ArticleTypeChannelDisplay

Determines the article-type templates that are used to display an article in its channels. Unless otherwise noted, all fields are createable, filterable, and nillable.

| Field Name | Field Type | Description |
| --- | --- | --- |
| articleTypeTemplates | [ArticleTypeTemplate](#articleTypeTemplates)\[\] | Indicates which article-type template applies in the specified channel. |

## ArticleTypeTemplate

Sets the article-type template for a specific channel. If not specified, the default article-type template applies.

<table class="featureTable sort_table" summary="">



          <thead class="thead sorted" align="left">
            <tr>
              <th class="featureTableHeader  " id="d149018e367">Field Name</th>

              <th class="featureTableHeader  " id="d149018e370">Field Type</th>

              <th class="featureTableHeader  " id="d149018e373">Description</th>

            </tr>

          </thead>

          <tbody class="tbody">
            <tr>
              <td class="entry" headers="d149018e367" data-title="Field Name"><span class="keyword parmname">channel</span></td>

              <td class="entry" headers="d149018e370" data-title="Field Type">string</td>

              <td class="entry" headers="d149018e373" data-title="Description">Specifies the channel where the article-type template applies:<ul class="ul bulletList">
                  <li class="li">
                    <samp class="codeph nolang">AllChannels</samp>: all the
                    available channels.
                  </li>

                  <li class="li">
                    <samp class="codeph nolang">App</samp>: the Articles tab
                    in Salesforce Knowledge.
                  </li>

                  <li class="li">
                    <samp class="codeph nolang">Pkb</samp>: the public
                    knowledge base.
                  </li>

                  <li class="li">
                    <samp class="codeph nolang">Csp</samp>: the Customer
                    Portal.
                  </li>

                  <li class="li">
                    <samp class="codeph nolang">Prm</samp>: the partner
                    portal.
                  </li>

                </ul>
              </td>

            </tr>

            <tr>
              <td class="entry" headers="d149018e367" data-title="Field Name"><span class="keyword parmname"><span class="ph" id="page"><a name="page"><!-- --></a>page</span></span></td>

              <td class="entry" headers="d149018e370" data-title="Field Type">string</td>

              <td class="entry" headers="d149018e373" data-title="Description">Represents the name of the custom Visualforce page used as a
                custom article-type template. Use this field when you select template</td>

            </tr>

            <tr>
              <td class="entry" headers="d149018e367" data-title="Field Name"><span class="keyword parmname"><span class="ph" id="template"><a name="template"><!-- --></a>template</span></span></td>

              <td class="entry" headers="d149018e370" data-title="Field Type">string</td>

              <td class="entry" headers="d149018e373" data-title="Description">Indicates the article-type template used for the specified channel:<ul class="ul bulletList">
                  <li class="li">
                    <samp class="codeph nolang" id="template_page"><a name="template_page"><!-- --></a>Page</samp>: custom Visualforce page. When specifying
                    this value, you must also set the <samp class="codeph nolang">page</samp> field with the Visualforce page name.
                  </li>

                  <li class="li">
                    <samp class="codeph nolang">Tab</samp>: display the
                    sections you defined in the layout as tabs.
                  </li>

                  <li class="li">
                    <samp class="codeph nolang">Toc</samp>: display the
                    sections you defined in the layout as table of content.
                  </li>

                </ul>
              </td>

            </tr>

          </tbody>

        </table>

## Declarative Metadata Sample Definitions

A sample article type definition follows:

<?xml version="1.0" encoding="UTF-8"?>
<CustomObject xmlns="http://soap.sforce.com/2006/04/metadata">
    <articleTypeChannelDisplay\>
        <articleTypeTemplates\>
            <channel\>App</channel\>
            <template\>Tab</template\>
        </articleTypeTemplates\>
        <articleTypeTemplates\>
            <channel\>Prm</channel\>
            <template\>Tab</template\>
        </articleTypeTemplates\>
        <articleTypeTemplates\>
            <channel\>Csp</channel\>
            <template\>Tab</template\>
        </articleTypeTemplates\>
        <articleTypeTemplates\>
            <channel\>Pkb</channel\>
            <template\>Toc</template\>
        </articleTypeTemplates\>
    </articleTypeChannelDisplay\>
    <deploymentStatus\>Deployed</deploymentStatus\>
    <description\>Article type with custom fields</description\>
    <fields\>
        <fullName\>description\_\_c</fullName\>
        <label\>Description</label\>
        <length\>48</length\>
        <type\>Text</type\>
    </fields\>
    <label\>newarticle</label\>
    <pluralLabel\>newarticles</pluralLabel\>
</CustomObject\>

## Wildcard Support in the Manifest File

This metadata type supports the wildcard character \* (asterisk) in the package.xml manifest file. For information about using the manifest file, see [Deploying and Retrieving Metadata with the Zip File](https://developer.salesforce.com/docs/atlas.en-us.api_meta.meta/api_meta/file_based_zip_file.htm "The deploy() and retrieve() calls are used to deploy and retrieve a .zip file. Within the .zip file is a project manifest (package.xml) that lists what to retrieve or deploy, and one or more XML components that are organized into folders.").

- **[ArticleType Layout](https://developer.salesforce.com/docs/atlas.en-us.api_meta.meta/api_meta/meta_articletype_layout.htm)**  
    Represents the metadata associated with an article type page layout. Article type layouts determine which fields users can view and edit when entering data for an article. Article type layouts also determine which sections appear when users view articles.
- **[ChannelLayout](https://developer.salesforce.com/docs/atlas.en-us.api_meta.meta/api_meta/meta_articletype_channellayout.htm)**  
    Represents the metadata associated with a communication channel layout. Communication channel layouts let admins share article content inline into communication channels (for example, in email publishers, Experience Builder sites, or social media publishers). Admins can create a list of fields for an article type or record type that they want to share for each communication channel. You can customize the order of the fields.
- **[ArticleType CustomField](https://developer.salesforce.com/docs/atlas.en-us.api_meta.meta/api_meta/meta_articletype_customfield.htm)**  
    Represents the metadata associated with an article type custom field. Use this metadata type to create, update, or delete article type custom field definitions.

#### See Also

- [ArticleType Layout](https://developer.salesforce.com/docs/atlas.en-us.api_meta.meta/api_meta/meta_articletype_layout.htm "Represents the metadata associated with an article type page layout. Article type layouts determine which fields users can view and edit when entering data for an article. Article type layouts also determine which sections appear when users view articles.")
- [ArticleType CustomField](https://developer.salesforce.com/docs/atlas.en-us.api_meta.meta/api_meta/meta_articletype_customfield.htm "Represents the metadata associated with an article type custom field. Use this metadata type to create, update, or delete article type custom field definitions.")