CardBoard API Documentation

Welcome to the CardBoard API documentation! Here you can find information on how to interact with the API.

Before you start, talk to you CardBoard community admin about enabling the API. The admin can do this by going to “Manage Your Community”, then select API. Select the checkbox that says “Enable the API for your community”.

You will also need to record the Bearer token. The Bearer token is used to authenticate your calls to the API.

Card Comments

Create comment

Endpoint

POST /api/maps/{map_id}/cards/{card_id}/card_comments

Parameters

Name Description type
comment[text] required The content of the card's comment text

Request

Route

POST /api/maps/4755/cards/3917/card_comments

Headers

Authorization: Bearer: Ym9iQGNhcmRib2FyZGl0LmNvbTowNmY1NDAxNzYzMmRiNWZhZDZlYjlmNjRhOGYwMDM2Nw
Content-Type: application/json
Host: example.org
Cookie: 

Body

{
  "comment": {
    "text": "New comment!"
  }
}

Response

Simulated Response

Status

200

Headers

X-Frame-Options: SAMEORIGIN
X-XSS-Protection: 1; mode=block
X-Content-Type-Options: nosniff
Content-Type: application/json; charset=utf-8
ETag: W/"ab1a1efd2ecaeddfaa69a5df4ff17ce2"
Cache-Control: max-age=0, private, must-revalidate
Set-Cookie: _cardmap_session=RnF6ZUp2OHM3M0ZQSGgrZlhJc0hSOHVmRDdiMFdaV3JEVkNReVg3STZOY1ZLNmJRd2FYRytXSENmWE5lZUR0Q1pnSzlRaG5rS3FQVllYUUN6ejhDVDdGYmFnVmJHTjVmQlRFVkozU0dpWFE9LS1JdHVXZlVDQnE3ZjEwK0R0SmVQZHR3PT0%3D--7bfce72aa1c187ce51069ee144a41a044147bb13; path=/; HttpOnly
X-Request-Id: 84df83d9-e69c-47d6-a227-2fb89f91a6d4
X-Runtime: 0.073454
Vary: Origin
Content-Length: 205

Body

{
  "id": 238,
  "comment": "New comment!",
  "created_at": "Mon, 13 May 2019 19:17:25 +0000",
  "edited_at": "Mon, 13 May 2019 19:17:25 +0000",
  "user": {
    "id": 5342,
    "name": "Bob",
    "email": "bob@cardboardit.com",
    "initials": "B"
  }
}

Update comment

Endpoint

PATCH /api/maps/{map_id}/cards/{card_id}/card_comments/{card_comment_id}

Parameters

Name Description with_example type
comment[text] required The content of the card's comment true text

Request

Route

PATCH /api/maps/4756/cards/3918/card_comments/239

Headers

Authorization: Bearer: Ym9iQGNhcmRib2FyZGl0LmNvbTo0ZTFlZGZhNmFkYWQ2OTI3NWRlMmRiZTEzOGVkZjIxMg
Content-Type: application/json
Host: example.org
Cookie: 

Body

{
  "comment": {
    "text": "I'll replace the old comment!"
  }
}

Response

Simulated Response

Status

200

Headers

X-Frame-Options: SAMEORIGIN
X-XSS-Protection: 1; mode=block
X-Content-Type-Options: nosniff
Content-Type: application/json; charset=utf-8
ETag: W/"b5947cf10b6e9ca13797f319a8d633d6"
Cache-Control: max-age=0, private, must-revalidate
Set-Cookie: _cardmap_session=T2pSeUJMWWp1d0RHb0NlRUJ1TG1ndVQyMlFJbU1NQWtkRDNQUEhHa0lTb0s2My9HeEoyUWNyM3hXUksvQWVCd01MQzBGeENlVUpoaWZFcldvdWR6WVZCUDloOHkwSkxpRlJuQ3JxNE1PeXM9LS03OW5zYXJiUlVBM2JicFcycTJFS2dRPT0%3D--adc665dbf258ef975c5e1ac2e6a7b0bcf45a5c93; path=/; HttpOnly
X-Request-Id: 9746b2de-89d1-4866-94e4-29aefb8969ad
X-Runtime: 0.014366
Vary: Origin
Content-Length: 222

Body

{
  "id": 239,
  "comment": "I'll replace the old comment!",
  "created_at": "Mon, 13 May 2019 19:17:25 +0000",
  "edited_at": "Mon, 13 May 2019 19:17:25 +0000",
  "user": {
    "id": 5343,
    "name": "Bob",
    "email": "bob@cardboardit.com",
    "initials": "B"
  }
}

Cards

Create a new card

Endpoint

POST api/maps/:map_id/cards/

Parameters

Name Description type default
map_id The id of the map which you would like to view the cards of
x required The x coordinate that you would like the card to have integer
y required The y coordinate that you would like the card to have integer
name The text you would like to view on the card string
color_name The color of the card, must be one of the following: "purple", "orange", "yellow", "warning", "green", "blue", "pink", "white", "red" string white
description A longer description of the card, viewed when you click on it text
annotation Integer enum for the annotation types (none: 0, question: 1, discuss: 2, lame: 3, blocked: 4, remove: 5) integer 0
status The status of card, it should be one of these values: 'none', 'unstarted', 'started', 'completed', 'deleted', 'custom'. When 'custom' is selected, the 'custom_status' field should have a non empty value. string none
custom_status A custom status of card, if you use this field don't forget to use status as 'custom'. string

Request

Route

POST api/maps/4759/cards/

Headers

Authorization: Bearer: Ym9iQGNhcmRib2FyZGl0LmNvbTo1YWNlMzEzMjM1YWEzZTk3ZGZjM2IyYjU2MWM5ODU3Mw
Content-Type: application/json
Host: example.org
Cookie: 

Body

{
  "x": 2,
  "y": 3,
  "name": "Design a flawless API",
  "color_name": "green",
  "description": "In order to allow customers to connect any of their own automated services to Cardboard, we should create an API that allows customers to scrape data whenever they want.",
  "annotation": 2,
  "status": "custom",
  "custom_status": "Code Review"
}

Response

Simulated Response

Status

200

Headers

X-Frame-Options: SAMEORIGIN
X-XSS-Protection: 1; mode=block
X-Content-Type-Options: nosniff
Content-Type: application/json; charset=utf-8
ETag: W/"301daf1ad074042894f4541d7e5aeda3"
Cache-Control: max-age=0, private, must-revalidate
Set-Cookie: _cardmap_session=R0o4NExwWUVqMCtvRFlxYXl4eVQxSFRLcmljOFQzbjY0YzhuOThqcDFUa25VUkZoNlhHTDhwNlR6SUpZUVo5MlphaW1jRlpZSmNCVnZZQ29EbHM5TFJPQU1FYlY0dUd2Z2h1eTZZS3VwaGs9LS1XSUNXQUxmUjIyNlFGazRUL1VKWEZBPT0%3D--9650e535abe527d8e6946b2358112a2a53606d33; path=/; HttpOnly
X-Request-Id: 44000c7b-d508-416a-99d3-04bd9d0d1baf
X-Runtime: 0.023008
Vary: Origin
Content-Length: 495

Body

{
  "id": 3923,
  "name": "Design a flawless API",
  "version": 5,
  "uuid": "aa284b10-57e1-0137-113e-34f64ba2347e",
  "x": 2.0,
  "y": 3.0,
  "color_name": "green",
  "description": "In order to allow customers to connect any of their own automated services to Cardboard, we should create an API that allows customers to scrape data whenever they want.",
  "status": "custom",
  "custom_status": "Code Review",
  "annotation": "discuss",
  "created_at": "2019-05-13T19:17:25.314Z",
  "updated_at": "2019-05-13T19:17:25.314Z",
  "has_comments": false
}

Destroying cards

Endpoint

DELETE /api/maps/{map_id}/cards/{id}

Request

Route

DELETE /api/maps/4761/cards/3925

Headers

Authorization: Bearer: Ym9iQGNhcmRib2FyZGl0LmNvbTpkYWU5ZDhmN2ViMTdhYmVhMWVhZmEzODlmZjAwZjk5ZA
Host: example.org
Content-Type: application/x-www-form-urlencoded
Cookie: 

Response

Simulated Response

Status

200

Headers

X-Frame-Options: SAMEORIGIN
X-XSS-Protection: 1; mode=block
X-Content-Type-Options: nosniff
Content-Type: text/html
Cache-Control: no-cache
Set-Cookie: _cardmap_session=blA0dnAvY0dNSTErdVB3YnBVUURGeDRTbmo3aXRFbEV6Szc5S0Q2L1lzRk96ZzM4N1lPY09kNTZ3ZytNSkgxZ2EzV2VIUHFiRzc5VmY2Y09oNzM1RksrLzJFQWZjVUdlNHRrSWUwVWlWMUU9LS1sdlFhQ0w1VHBHTFkwWW1ubzBDNmpRPT0%3D--4d4fc3539659f48299ffe0d6da4e58db8217b0ec; path=/; HttpOnly
X-Request-Id: ecb8901c-342d-49cd-afd6-67e818cae6d4
X-Runtime: 0.026844
Vary: Origin
Content-Length: 0

Getting a card

Endpoint

GET /api/maps/{map_id}/cards/{id}

Parameters

Name Description type
include_comments Indicates if the cards should include comments when returned. Defaults to false. When comments are included a 'comments' attribute will be added to the response otherwise a 'has_comments' attribute will be included. boolean

Request

Route

GET /api/maps/4758/cards/3921

Headers

Authorization: Bearer: Ym9iQGNhcmRib2FyZGl0LmNvbTo1OTVhNzQ1NzZmNTM4MTcyZDliYjVkNTAwYTFmMTc4Nw
Host: example.org
Cookie: 

Response

Simulated Response

Status

200

Headers

X-Frame-Options: SAMEORIGIN
X-XSS-Protection: 1; mode=block
X-Content-Type-Options: nosniff
Content-Type: application/json; charset=utf-8
ETag: W/"d01c57d32623913d97f98b21596de998"
Cache-Control: max-age=0, private, must-revalidate
Set-Cookie: _cardmap_session=aStXS1FFTDU4eG5IUW5kUnR2MDJoMkV6dmZQeUthUGVadS9Ld0xtNVBpSUExSGFIMW0zMG5ZTmRIRUpySE5hS1lvZWdHRHZCWUZRWitjVXlTODVGbHI1V1lSYkxCY3JaNnBCdjdMejBSYVE9LS01TmNNdyt6cStkSjBtd29XaUNJckRnPT0%3D--7d1d34ce722bb38eda16fe35be7a2e1dbf5dd71c; path=/; HttpOnly
X-Request-Id: bd01a2a0-cd14-4a46-95ec-c6204758c979
X-Runtime: 0.014626
Vary: Origin
Content-Length: 355

Body

{
  "id": 3921,
  "name": "Test card",
  "version": 4,
  "uuid": "aa1e2600-57e1-0137-113e-34f64ba2347e",
  "x": 0.0,
  "y": 0.0,
  "color_name": "blue",
  "description": "this is indeed the card that is known as test",
  "status": "custom",
  "custom_status": "Code Review",
  "annotation": "none",
  "created_at": "2019-05-13T19:17:25.246Z",
  "updated_at": "2019-05-13T19:17:25.246Z",
  "has_comments": false
}

Listing cards

Endpoint

GET /api/maps/{map_id}/cards

Parameters

Name Description type default
page_length Maximum amount of cards to return from any one query. Defaults to 10. 0 is non-paginated and returns all cards on the map. integer 10
page Which page in a paginated query. Defaults to 0 (first page). integer 0
include_comments Indicates if the cards should include comments when returned. Defaults to false. When comments are included a 'comments' attribute will be added to the response otherwise a 'has_comments' attribute will be included. boolean

Request

Route

GET /api/maps/4757/cards?include_comments=true

Headers

Authorization: Bearer: Ym9iQGNhcmRib2FyZGl0LmNvbTo1OTk2ZGFlMjk3MjJkOTgxMWUxOTlhZTU3YjBjYmQwNA
Host: example.org
Cookie: 

Query Parameters

include_comments=true

Response

Simulated Response

Status

200

Headers

X-Frame-Options: SAMEORIGIN
X-XSS-Protection: 1; mode=block
X-Content-Type-Options: nosniff
Content-Type: application/json; charset=utf-8
ETag: W/"ebc849cbe786baec7b66fc102bd59c0d"
Cache-Control: max-age=0, private, must-revalidate
Set-Cookie: _cardmap_session=MnE2MjhQMDA0L2NmNjRVQTNTaDhFdk1XcTl0cGZzT2JTVmU1L0dESVg1aEh2ZlZzdklLcW9UZWtwUVpTdUdvS2FlMTZIOHBxREdxVG1wN0FVQTd2aThJZVpiQjkraStaa3FSYWxYSElabzQ9LS1KeStHZElPaTV6SEdBWnUvaittaDJnPT0%3D--d8c0e76a37f22ff2e2f0affdf97734f8b88c1c6a; path=/; HttpOnly
X-Request-Id: 65ad3f48-3f43-4e50-9134-2d297fced3e2
X-Runtime: 0.023255
Vary: Origin
Content-Length: 1013

Body

[
  {
    "id": 3919,
    "name": "Test card",
    "version": 4,
    "uuid": "aa1525d0-57e1-0137-113e-34f64ba2347e",
    "x": 0.0,
    "y": 0.0,
    "color_name": "blue",
    "description": "this is indeed the card that is known as test",
    "status": "custom",
    "custom_status": "Code Review",
    "annotation": "none",
    "created_at": "2019-05-13T19:17:25.187Z",
    "updated_at": "2019-05-13T19:17:25.187Z",
    "comments": [
      {
        "id": 240,
        "comment": "The card should be red, it's a bug!",
        "created_at": "Mon, 13 May 2019 19:17:25 +0000",
        "user": {
          "id": 5344,
          "name": "Bob",
          "email": "bob@cardboardit.com",
          "initials": "B"
        }
      }
    ]
  },
  {
    "id": 3920,
    "name": "Example card: 1",
    "version": 5,
    "uuid": "aa15fcc0-57e1-0137-113e-34f64ba2347e",
    "x": 6.0,
    "y": 6.0,
    "color_name": "blue",
    "description": "this is indeed the card that is known as test",
    "status": "none",
    "annotation": "none",
    "created_at": "2019-05-13T19:17:25.193Z",
    "updated_at": "2019-05-13T19:17:25.193Z",
    "comments": [
      {
        "id": 241,
        "comment": "Looks good!",
        "created_at": "Mon, 13 May 2019 19:17:25 +0000",
        "user": {
          "id": 5344,
          "name": "Bob",
          "email": "bob@cardboardit.com",
          "initials": "B"
        }
      }
    ]
  }
]

Update a card

Endpoint

PATCH api/maps/{map_id}/cards/{id}

Parameters

Name Description type default
map_id The id of the map which you would like to view the cards of
x required The x coordinate that you would like the card to have integer
y required The y coordinate that you would like the card to have integer
name The text you would like to view on the card string
color_name The color of the card, must be one of the following: "purple", "orange", "yellow", "warning", "green", "blue", "pink", "white", "red" string white
description A longer description of the card, viewed when you click on it text
annotation Integer enum for the annotation types (none: 0, question: 1, discuss: 2, lame: 3, blocked: 4, remove: 5) integer 0
status The status of card, it should be one of these values: 'none', 'unstarted', 'started', 'completed', 'deleted', 'custom'. When 'custom' is selected, the 'custom_status' field should have a non empty value. string none
custom_status A custom status of card, if you use this field don't forget to use status as 'custom'. string

Request

Route

PATCH api/maps/4760/cards/3924

Headers

Authorization: Bearer: Ym9iQGNhcmRib2FyZGl0LmNvbTpjNzkyNmViZTk4N2E5MDAxNzk5NDdlNmM2YTEyYTNiNA
Content-Type: application/json
Host: example.org
Cookie: 

Body

{
  "map_id": 4760,
  "x": 2,
  "y": 3,
  "name": "Design a flawless API",
  "color_name": "green",
  "description": "In order to allow customers to connect any of their own automated services to Cardboard, we should create an API that allows customers to scrape data whenever they want.",
  "annotation": 2,
  "status": "started",
  "custom_status": ""
}

Response

Simulated Response

Status

200

Headers

X-Frame-Options: SAMEORIGIN
X-XSS-Protection: 1; mode=block
X-Content-Type-Options: nosniff
Content-Type: application/json; charset=utf-8
ETag: W/"2d5e80b416196ab4be7060e30f9c6d2a"
Cache-Control: max-age=0, private, must-revalidate
Set-Cookie: _cardmap_session=SHdETWNNbGQ2V2JYck9rdzdUdTlBSTVmLzNrTVRoSDhwZ1ZQbEVXT2ZxakV6NFNuSjM5ZnpaZWNRQTZwb1ZuNDlKYk1Oa2hNRWtwMTFMTis0c0taQ1YyY253NXFhS3dkL1EyTTA5YWlUd2c9LS1zQi9CR09JbkZwaFQyTUkwdmpvN01nPT0%3D--d444072d8d6db7acb52770f15190e2905070a29d; path=/; HttpOnly
X-Request-Id: 4bc22c6c-f949-4fb3-b76a-cb333922ccc4
X-Runtime: 0.030088
Vary: Origin
Content-Length: 485

Body

{
  "id": 3924,
  "name": "Design a flawless API",
  "version": 5,
  "uuid": "aa2cf510-57e1-0137-113e-34f64ba2347e",
  "x": 2.0,
  "y": 3.0,
  "color_name": "green",
  "description": "In order to allow customers to connect any of their own automated services to Cardboard, we should create an API that allows customers to scrape data whenever they want.",
  "status": "started",
  "custom_status": "",
  "annotation": "discuss",
  "created_at": "2019-05-13T19:17:25.343Z",
  "updated_at": "2019-05-13T19:17:25.378Z",
  "has_comments": false
}

Maps

Create a new map

Endpoint

POST api/maps

Parameters

Name Description
name required The Map name
public_read required The option to let other non-organization individuals see the map
collaborators Objects of user ids that specify all the users in the same organization who should have access to changing the map
organization_id The organization (community) id that a user would want to assign this map to

Request

Route

POST api/maps

Headers

Authorization: Bearer: Ym9iQGNhcmRib2FyZGl0LmNvbTpjYjJmMjU4MWIxZjJmMmQwMTVkNjBiNWZhMTVkMGZmOA
Content-Type: application/json
Host: example.org
Cookie: 

Body

{
  "name": "Map",
  "public_read": true,
  "collaborators": [
    {
      "id": 5352
    }
  ],
  "organization_id": 2044
}

Response

Simulated Response

Status

200

Headers

X-Frame-Options: SAMEORIGIN
X-XSS-Protection: 1; mode=block
X-Content-Type-Options: nosniff
Content-Type: application/json; charset=utf-8
ETag: W/"be5db5fde05b1f287a77dacc62399b14"
Cache-Control: max-age=0, private, must-revalidate
Set-Cookie: _cardmap_session=RGdzRitkRGtIY0ZWT0h4UGR2bWZXSDFaOWtJQ0F0QkdGSnVGaTRvZ2gydmtEaEkxVnJ4VFVRT3RCRkhYaTdIaC9yVlJKM0pDUThVUkhhMmMwdy85VFNIb3FUVEhIYzFWd3NjeDRjcy9XMW89LS1NZ0gxdUVwelk2OWpkcTlEZU5nZVdBPT0%3D--26f891c2845520de9223783d410fa87b44fd8bb2; path=/; HttpOnly
X-Request-Id: d6c89c3a-1b71-40c2-9e15-a2261813f021
X-Runtime: 0.032135
Vary: Origin
Content-Length: 256

Body

{
  "id": 4775,
  "name": "Map",
  "version": 1,
  "cards": [

  ],
  "slices": [

  ],
  "dividers": [

  ],
  "collaborators": [
    {
      "id": 5351
    },
    {
      "id": 5352
    }
  ],
  "stickers": [

  ],
  "owner_id": 5351,
  "public": true,
  "created_at": "2019-05-13T19:17:25.705Z",
  "updated_at": "2019-05-13T19:17:25.705Z",
  "community": 2044
}

Destroying maps

Endpoint

DELETE /api/maps/{id}

Request

Route

DELETE /api/maps/4777

Headers

Authorization: Bearer: Ym9iQGNhcmRib2FyZGl0LmNvbTo2NDU5NzYwMzViNjU3ZjI0NzQ1ZDE5ZmE0MWNiZGRkZA
Host: example.org
Content-Type: application/x-www-form-urlencoded
Cookie: 

Response

Simulated Response

Status

200

Headers

X-Frame-Options: SAMEORIGIN
X-XSS-Protection: 1; mode=block
X-Content-Type-Options: nosniff
Content-Type: text/html
Cache-Control: no-cache
Set-Cookie: _cardmap_session=MVJmU3AwYnU3b25mSWJHRVpRK01TdVVQdngvSEdndTd1dU5zVGpoUlR3aU1zUHZEbnNPelVDYUQrU3U4anhzamt0Mzlibk5IN29LWThqSTgreTdZZkF6VkVta2loNUVwWVNaeENxUXlqVkU9LS1ORWZjbUhtL0prRGFRV0J1MWFIUnFBPT0%3D--7053bb3d7ea73c47262080154598c217df11e9d9; path=/; HttpOnly
X-Request-Id: cc2ff8ff-336e-4a5e-8b85-93c55c1e269d
X-Runtime: 0.041544
Vary: Origin
Content-Length: 0

Getting maps

Endpoint

GET /api/maps/{id}

Request

Route

GET /api/maps/4773

Headers

Authorization: Bearer: Ym9iQGNhcmRib2FyZGl0LmNvbTo4NzY3OWIwOTkwNGI5OTViZWI1MDk4ZjNmYTU1ZmFkZg
Host: example.org
Cookie: 

Response

Simulated Response

Status

200

Headers

X-Frame-Options: SAMEORIGIN
X-XSS-Protection: 1; mode=block
X-Content-Type-Options: nosniff
Content-Type: application/json; charset=utf-8
ETag: W/"ee046262cdd1cee26adaf1f2530b96c0"
Cache-Control: max-age=0, private, must-revalidate
Set-Cookie: _cardmap_session=Um10TjVMbFZkRVQzUUtoY2swVHJFMWRPeHArWE1Nd0drcjZmYm1RZ0hCdFcwOTNja1B0dThIQlVCZko2cStCdEJqQXJESHVyRHNJYVp4QXNLWHFXMXliTCtkalF2ZjRaclYxNW5pVGRNL2M9LS14dEVPRWc0SjJQTTQ4WjNaUjdZTldnPT0%3D--3b3f52ab94d6d17aa4c5c0fe111f69b1b458043d; path=/; HttpOnly
X-Request-Id: 96f3cbe1-11f3-47cf-ba04-de4c0cb481d0
X-Runtime: 0.019894
Vary: Origin
Content-Length: 238

Body

{
  "id": 4773,
  "name": "Example Map",
  "version": 3,
  "cards": [

  ],
  "slices": [

  ],
  "dividers": [

  ],
  "collaborators": [
    {
      "id": 5350
    }
  ],
  "stickers": [

  ],
  "owner_id": 5350,
  "created_at": "2019-05-13T19:17:25.629Z",
  "updated_at": "2019-05-13T19:17:25.629Z",
  "community": 2043
}

Listing maps

Endpoint

GET /api/maps

Parameters

Name Description
page Paginate the response, by default paged to 10 entries. Can also be passed as /maps/page/{page-number}

Request

Route

GET /api/maps?page=2

Headers

Authorization: Bearer: Ym9iQGNhcmRib2FyZGl0LmNvbTplNzhkM2E0MmM2ZTljYTkwMWViMzAyM2EyOWFkYjI4Ng
Host: example.org
Cookie: 

Query Parameters

page=2

Response

Simulated Response

Status

200

Headers

X-Frame-Options: SAMEORIGIN
X-XSS-Protection: 1; mode=block
X-Content-Type-Options: nosniff
Content-Type: application/json; charset=utf-8
ETag: W/"e97b0d48958c9acc3ad19d9a3905ab23"
Cache-Control: max-age=0, private, must-revalidate
Set-Cookie: _cardmap_session=NlY4YkRuVjQyVU9LTzl4cmh4QmRyaEJvUU9CcS82VVcrNWxaQ01LeWxMTTEvVXNqc3F6RXlKTHlwOGVUdGhhM1phUTlPS0xzNWxMb1FQMHRiSHZPUngwWXQwWlNXL2RseHI3ZnNJYVZ5aDg9LS1GbmJSNmc5QzRudjBBRW5NTDQrQzNnPT0%3D--3d978fd4a828a58c94cdf19a6f7bf46bd48bc535; path=/; HttpOnly
X-Request-Id: 8ee27c0a-4ff9-4de0-8475-c27bcd9e5b57
X-Runtime: 0.110527
Vary: Origin
Content-Length: 240

Body

[
  {
    "id": 4762,
    "name": "Example Map",
    "version": 3,
    "cards": [

    ],
    "slices": [

    ],
    "dividers": [

    ],
    "collaborators": [
      {
        "id": 5349
      }
    ],
    "stickers": [

    ],
    "owner_id": 5349,
    "created_at": "2019-05-13T19:17:25.451Z",
    "updated_at": "2019-05-13T19:17:25.451Z",
    "community": 2042
  }
]

Updating a map

Endpoint

PATCH api/maps/{id}

Parameters

Name Description
name The Map name
public_read The option to let other non-organization individuals see the map (defaults to false)
collaborators Objects of user ids that specify all the users in the same organization who should have access to changing the map
organization_id The organization (community) id that a user would want to assign this map to

Request

Route

PATCH api/maps/4776

Headers

Authorization: Bearer: Ym9iQGNhcmRib2FyZGl0LmNvbTowMDg1YjU0OWYzNjUwNGMyMTg4YWUwMTRmZDllNzg2ZQ
Content-Type: application/json
Host: example.org
Cookie: 

Body

{
  "name": "Map",
  "public_read": true,
  "collaborators": [
    {
      "id": 5354
    }
  ],
  "organization_id": 2045
}

Response

Simulated Response

Status

200

Headers

X-Frame-Options: SAMEORIGIN
X-XSS-Protection: 1; mode=block
X-Content-Type-Options: nosniff
Content-Type: application/json; charset=utf-8
ETag: W/"b8b79ae96b0d3a10db10a3c2c4492684"
Cache-Control: max-age=0, private, must-revalidate
Set-Cookie: _cardmap_session=dlVkYWwrS0F2b3ZlK2dUSG1ubklad3NqQzRWZnFEem1kWENCZTBxdGJ5Wi9xNWNmU2lGTVB2RjZ4M2k1QlYranRiVTdYOHpCVkRJN0dsblhMR3N3Mkk1UGY3SzdCenBsR1VtZHBVWTZJd1k9LS1rRlB1OVc2VXk3bHpqYXpqWTZLU2FnPT0%3D--9cf9519269856fe738677c433e2061cdfdb9165d; path=/; HttpOnly
X-Request-Id: 47c2ba26-aded-48a5-b4d9-7f6af50726f3
X-Runtime: 0.034741
Vary: Origin
Content-Length: 230

Body

{
  "id": 4776,
  "name": "Map",
  "version": 4,
  "cards": [

  ],
  "slices": [

  ],
  "dividers": [

  ],
  "collaborators": [
    {
      "id": 5354
    }
  ],
  "stickers": [

  ],
  "owner_id": 5353,
  "created_at": "2019-05-13T19:17:25.745Z",
  "updated_at": "2019-05-13T19:17:25.787Z",
  "community": 2045
}

Users

Destroying user

Endpoint

DELETE /api/users/{id}

Request

Route

DELETE /api/users/5371

Headers

Authorization: Bearer: Ym9iQGNhcmRib2FyZGl0LmNvbTo5YzU2NWUzNmJjODljYWYyOWJjODI5ZTFhNzlmMjY4MA
Host: example.org
Content-Type: application/x-www-form-urlencoded
Cookie: 

Response

Simulated Response

Status

200

Headers

X-Frame-Options: SAMEORIGIN
X-XSS-Protection: 1; mode=block
X-Content-Type-Options: nosniff
Content-Type: text/html
Cache-Control: no-cache
Set-Cookie: _cardmap_session=VjVEeWpRNHVCeEN2b3R3SjRTRlpTVU9IVUh6RHVnQ0hlQTdkbUh3QzdhMkJmSU04ZCtHbXp2NUIrU2pTYUM0MEhqc3hCK0NqaHFUZ3JnMFhXNDQyRWd2akY2R2NROFNlbFZDUXNJRkIraEk9LS1aWDFqa2dDMUx3c1N5Z0VOdHVVMjNBPT0%3D--8d4037bad85cd64b8799a7f7d0b8dda560c94710; path=/; HttpOnly
X-Request-Id: 242bb90b-e71f-48cb-bfbe-4a1a29b589d5
X-Runtime: 0.022274
Vary: Origin
Content-Length: 0

Getting users

Endpoint

GET /api/users/{id}

Request

Route

GET /api/users/5367

Headers

Authorization: Bearer: Ym9iQGNhcmRib2FyZGl0LmNvbTphMmMxODYwZjI3YTFjYjE2MjY4N2I1M2Y0Y2IyN2Y3MQ
Host: example.org
Cookie: 

Response

Simulated Response

Status

200

Headers

X-Frame-Options: SAMEORIGIN
X-XSS-Protection: 1; mode=block
X-Content-Type-Options: nosniff
Content-Type: application/json; charset=utf-8
ETag: W/"0cc7ad7190838988e1f78e3b4f170ab2"
Cache-Control: max-age=0, private, must-revalidate
Set-Cookie: _cardmap_session=UVJOY053dGloZEQzWEtrcC85b2tDMGFOK0xxWDMxempnU2QvUGFrL0RKNjNMNGt0WVRrcVltTjRjWlpMZmRkN2Q2VDlkdm5sZ0p3NFJPaVpQb3RYUi9vSU8zNkZ2cHZPRXBTOHBFMnRpYkk9LS1VYUlhdVFIeHNwZUJrenpOTm1FeWxRPT0%3D--1d5bd12b098fc3067c6796bbce067196bb2664dd; path=/; HttpOnly
X-Request-Id: c31b46f8-5e7b-4082-8b0d-86584a0e1870
X-Runtime: 0.005910
Vary: Origin
Content-Length: 69

Body

{
  "id": 5367,
  "name": "Bob",
  "email": "bob@cardboardit.com",
  "initials": "B"
}

Listing users

Endpoint

GET /api/users

Parameters

Name Description
page Paginate the response, by default paged to 10 entries. Can also be passed as /users/page/{page-number}

Request

Route

GET /api/users?page=2

Headers

Authorization: Bearer: Ym9iQGNhcmRib2FyZGl0LmNvbTo2NmM3MTMwYjljZmQ5NDlkNzJkYjA1OTc4M2UxYmE0ZQ
Host: example.org
Cookie: 

Query Parameters

page=2

Response

Simulated Response

Status

200

Headers

X-Frame-Options: SAMEORIGIN
X-XSS-Protection: 1; mode=block
X-Content-Type-Options: nosniff
Content-Type: application/json; charset=utf-8
ETag: W/"00c7958ddbd75bc7c3d450c17a1377d5"
Cache-Control: max-age=0, private, must-revalidate
Set-Cookie: _cardmap_session=Y2hac3EzMUwyaGQvdERyemIxYmxkN0dVam8wOGtYRW80UDVRMmpGcVljRG0rQlR6NnFwY2pCN2JEMmtEdHpyQlNVYWJVY0pDeVZWNFNuQWJqUUdtMmxvb1d6ajdWNkp6NVlzcTlxamdOTU09LS1SQnppbDByQktZQ3MzaTByN1NqZmFRPT0%3D--6b2a64bb1666c28c38eb043ff53200dd271fa142; path=/; HttpOnly
X-Request-Id: dd701e8e-323c-4ce2-87a5-5abca5ba0736
X-Runtime: 0.013135
Vary: Origin
Content-Length: 89

Body

[
  {
    "id": 5366,
    "name": "Example user: 9",
    "email": "example9@cardboardit.com",
    "initials": "EU"
  }
]

Updating a user

Endpoint

PATCH api/users/{id}

Parameters

Name Description
name Display name of the user

Request

Route

PATCH api/users/5369

Headers

Authorization: Bearer: Ym9iQGNhcmRib2FyZGl0LmNvbTo5ZTBlMzgzZWNhMmQ3MjljNTc0ZDc3YmFmNjA0MzAyYg
Content-Type: application/json
Host: example.org
Cookie: 

Body

{
  "name": "Frank"
}

Response

Simulated Response

Status

200

Headers

X-Frame-Options: SAMEORIGIN
X-XSS-Protection: 1; mode=block
X-Content-Type-Options: nosniff
Content-Type: application/json; charset=utf-8
ETag: W/"6171eaeb9946eb66433bcddf9c10786d"
Cache-Control: max-age=0, private, must-revalidate
Set-Cookie: _cardmap_session=RFNzeXdiWTNUQTV0VkU1bDRPdllscDBoQkpWenJvTTViV3doL3M5STFTTnpwMlh6VkFmQ2pFbUZydC9oMmI3ejJyd0hlMlRwcDVNSXNNK3NGMzZ3eTdrWGhkYTlQYmlyVWZPSU12Mjd4TTA9LS1BSlVKcDhEZjgzM3F4WERWdEVrT1dRPT0%3D--add3b27d27b7bda51ad8773a68c6cbe18589a812; path=/; HttpOnly
X-Request-Id: c5200db8-1254-410e-ae67-1f9c1aef140b
X-Runtime: 0.011013
Vary: Origin
Content-Length: 72

Body

{
  "id": 5369,
  "name": "Frank",
  "email": "fred@cardboardit.com",
  "initials": "F"
}