Fields

Name Type Description User-specified? Required? Default value Possible values Maximum length
id integer System-generated identifier. No Yes - - -
type string Type of card. Only general cards can be created through this API. Other types are system generated but can still be read or updated. Yes Yes - general 50
folder string Folder in which card is placed. Yes Yes inbox inbox, completed, archive 50
title string Title of card. Yes Yes - - 255
description string Description of card. Yes Yes - - -
link_text string Title of related article or module, if specified. Yes No - - 255
relates_to_type string Type of entity with which this card is associated. Yes No - article, module 50
relates_to_id integer Identifier of associated entity. Yes No - - -
assignees JSON array List of assignees. When creating or updating a card, you only need to specify an array with a single object containing the assignee's identifier. At the moment only single assignments are supported. Yes No [] - -
created_at timestamp UTC timestamp of when the helper was first created. No Yes Request date - -
updated_at timestamp UTC timestamp of when the helper was last modified. No Yes Request date - -

Methods

List all cards in a folder

  • GET: curl -X GET https://api.elev.io/v1/cards/folders/<folder>?page=<page>&type=<type>&assignee=<assignee_id>&more
  • Optional query string parameters:
    • page: Page number for pagination. Defaults to 1.
    • type: Filter by card type. Defaults to all types.
    • assignee: Filter by assignee user id.
    • more: Generate more suggestions before listing them. Only applies when folder is suggestions.
  • Sample JSON response body:
 {
"cards": [
{
"id": 1,
"type": "feedback_text",
"folder": "inbox",
"title": "Syncing articles",
"description": "This article is incomplete. Please fix.",
"relates_to_type": "article",
"relates_to_id": 42,
"custom_attributes": {"user_email": "roseanne@example.com"},
"assignees": [
{
"id": 1,
"email": "agent.amber@example.com",
"name": "Agent Amber",
"gravatar": "https://gravatar.com/avatar/abc123",
}
],
"notes": "Add more details on different types of sync.",
"created_at": "2018-05-28T01:45:17.000000Z",
"updated_at": "2018-05-28T01:45:35.000000Z"
},
{
"id": 2,
"type": "general",
"folder": "completed",
"title": "Create new article",
"description": "We need an article that describes the sync process.",
"relates_to_type": "article",
"relates_to_id": 66,
"custom_attributes": null,
"assignees": [
{
"id": 1,
"email": "agent.blue@example.com",
"name": "Agent Blue",
"gravatar": "https://gravatar.com/avatar/xyz456",
}
],
"notes": "This is now ready and published.",
"created_at": "2018-05-28T01:45:17.000000Z",
"updated_at": "2018-05-28T01:45:35.000000Z"
}
]
}

List all cards related to a specific resource

  • GET: curl https://api.elev.io/v1/cards/related/<relates_to_type>/<relates_to_id>?page=<page>
  • Optional query string parameters:
    • page: Page number for pagination. Defaults to 1.
  • Sample JSON response body:
 {
"cards": [
{
"id": 1,
"type": "feedback_text",
"folder": "inbox",
"title": "Syncing articles",
"description": "This article is incomplete. Please fix.",
"relates_to_type": "article",
"relates_to_id": 42,
"custom_attributes": {"user_email": "roseanne@example.com"},
"assignees": [
{
"id": 1,
"email": "agent.amber@example.com",
"name": "Agent Amber",
"gravatar": "https://gravatar.com/avatar/abc123",
}
],
"notes": "Add more details on different types of sync.",
"created_at": "2018-05-28T01:45:17.000000Z",
"updated_at": "2018-05-28T01:45:35.000000Z"
},
{
"id": 2,
"type": "general",
"folder": "completed",
"title": "Create new article",
"description": "We need an article that describes the sync process.",
"relates_to_type": "article",
"relates_to_id": 42,
"custom_attributes": null,
"assignees": [
{
"id": 1,
"email": "agent.blue@example.com",
"name": "Agent Blue",
"gravatar": "https://gravatar.com/avatar/xyz456",
}
],
"notes": "This is now ready and published.",
"created_at": "2018-05-28T01:45:17.000000Z",
"updated_at": "2018-05-28T01:45:35.000000Z"
}
]
}

Get a card

  • GET: curl https://api.elev.io/v1/cards/<id>
  • Sample JSON response body:
 {
"card": {
"id": 1,
"type": "feedback_text",
"folder": "inbox",
"title": "Syncing articles",
"description": "This article is incomplete. Please fix.",
"relates_to_type": "article",
"relates_to_id": 42,
"custom_attributes": {"user_email": "roseanne@example.com"},
"assignees": [
{
"id": 1,
"email": "agent.amber@example.com",
"name": "Agent Amber",
"gravatar": "https://gravatar.com/avatar/abc123",
}
],
"notes": "Add more details on different types of sync.",
"created_at": "2018-05-28T01:45:17.000000Z",
"updated_at": "2018-05-28T01:45:35.000000Z"
}
}

Create a card

  • POST: curl -H "Content-Type: application/json" -X POST https://api.elev.io/v1/cards --data @body.json
  • Sample JSON body:
 {
"card": {
"type": "general",
"folder": "inbox",
"title": "Fix typos",
"description": "Numerous typos need to be fixed.",
"link_text": "Article title",
"relates_to_type": "article",
"relates_to_id": 42,
"assignees": [{"id": 1}]
}
}

Update an existing card

  • PUT: curl -H "Content-Type: application/json" -X PUT https://api.elev.io/v1/cards/<id> --data @body.json
  • Sample JSON body:
 {
"card": {
"id": 1,
"type": "general",
"folder": "completed",
"title": "Fix typos",
"description": "Numerous typos need to be fixed.",
"link_text": "Article title",
"relates_to_type": "article",
"relates_to_id": 42,
"assignees": [{"id": 1}]
}
}