Fields

NameTypeDescriptionUser-specified?Required?Default valuePossible valuesMaximum length
idintegerSystem-generated identifier.NoYes---
parent_category_idintegerIdentifier of the parent category.YesNo-Has to correspond to a valid category.-
orderintegerUsed to sort category when displayed.YesYes999--
external_idstringCategory identifier in the source system.YesNo--255
sourcestringOriginal source of category.NoYesapiapi, custom, zendesk, freshdesk, helpscout, wordpress25
namestringName of category.YesNo--255
accessstringLevel of access granted for this category.YesYespublicpublic, restricted, none10
access_emails (deprecated)string arrayList of emails for users permitted to access this category when access is restricted.YesNo---
access_domains (deprecated)string arrayList of Internet domains from which this category can be accessed when access is restricted.YesNo---
access_groups (deprecated)string arrayList of groups for users permitted to access this category when access is restricted.YesNo---
 smart_groups
object array
List of smart groups that apply to this category
YesNo---
created_attimestampUTC timestamp of when the category was first created.NoYesRequest date--
updated_attimestampUTC timestamp of when the category was last modified.NoYesRequest date--
translationsobject arrayList of available translations in supported languages.YesYes---
translation.language_idstringISO 639-1 language code of the translation.YesYesenSee list of supported languages-
translation.titlestringTitle of category.YesNo--255

Methods

List all categories
 {
    "categories": [
      {
        "id": 66,
        "source": "api",
        "external_id": "42",
        "order": 42,
        "access": "restricted",
        "access_emails": [],
        "access_domains": [],
        "access_groups": [],
        "smart_groups": [
          {"id": 42, "name": "authenticated"}, 
          {"id": 43, "name": "beta_users"}
        ],
        "translations": [
          {"id": 1, "language_id": "en", "title": "Alpha/Beta Features"}
        ]
      }
    ]
  }
Get a category
  • GET: curl -X GET https://api.elev.io/v1/categories/<id>
  • Sample JSON response body:
 {
    "category": {
      "id": 66,
      "source": "api",
      "external_id": "42",
      "order": 42,
      "access": "restricted",
      "access_emails": [],
      "access_domains": [],
      "access_groups": [],
      "smart_groups": [
        {"id": 42, "name": "authenticated"}, 
        {"id": 43, "name": "beta_users"}
      ],
      "translations": [
        {"id": 1, "language_id": "en", "title": "Alpha/Beta Features"},
        {"id": 2, "language_id": "de", "title": "Alpha/Beta-Funktionen"}
      ]
    }
  }
Create a category
  • POST: curl -H "Content-Type: application/json" -X POST --data @body.json https://api.elev.io/v1/categories
  • Sample JSON body:
 {
    "category": {
      "external_id": "42",
      "order": 42,
      "access": "restricted",
      "smart_groups": [{"id": 42}],
      "translations": [
        {"language_id": "en", "title": "Alpha/Beta Features"}
      ]
    }
  }
Update a category
  • PUT: curl -H "Content-Type: application/json" -X PUT --data @body.json https://api.elev.io/v1/categories/<id>
  • Sample JSON body:
 {
    "category": {
      "id": 42,
      "external_id": "42",
      "order": 42,
      "access": "restricted",
      "smart_groups": [{"id": 43}],
      "translations": [
        {"id": 43, "language_id": "en", "title": "Alpha/Beta Features"}
      ]
    }
  }
Delete a category and all its articles and translations
  • DELETE: curl -X DELETE https://api.elev.io/v1/categories/<id>