Introduction
Welcome to the LoopedIn API! You can use our API to access LoopedIn API endpoints, which can be used to view, create and update Ideas, Roadmap Cards, Announcements and more.
You can view code examples and response structures in the dark area to the right.
We support CORS (cross-origin resource sharing) for public endpoints allowing you to call the API from anywhere. We recommend keeping your personal access tokens safe and do not recommend posting them to public websites or even committing them to your source control repository.
The main endpoint is:
Authentication
LoopedIn uses API keys to allow access to the API. You can register a new API key at our developer portal.
LoopedIn expects for the API key to be included in all API requests to the server in a header that looks like the following:
Authorization: Bearer API_KEY
Account
The Account Object
{
"id": "5ebre2026e123d000224361a1",
"name": "Acme Copr.",
"created": "2021-01-19T08:19:48.209Z",
"objectives": [
{
"id": "5c97a92ea576c80017fwff4w",
"title": "Increase Retention",
"color": "#ffffff"
},
{...}
],
"idea_categories": [
{
"id": "5c97a92ea576c80017fwff4w",
"title": "New idea",
"color": "#ffffff",
"bgcolor": "#1869fb"
},
{...}
],
"announcement_categories": [
{
"id": "5c97a92ea576c80017fwff4w",
"title": "New Feature",
"color": "#ffffff",
"bgcolor": "#1869fb"
},
{...}
],
"feedback_categories": [
{
"id": "6wd8a92ea576c80017fw98al",
"title": "Bug",
"color": "#000000",
"bgcolor": "#1869fb"
},
{...}
],
}
Parameter | Type | Description |
---|---|---|
id | string |
The id of the Account |
name | string |
The name of the Account |
created | string |
The date at which the Account was created |
objectives | array |
An array of Roadmap Objectives objects |
idea_categories | array |
An array of Idea Category objects |
announcement_categories | array |
An array of Announcement Category objects |
feedback_categories | array |
An array of Feedback Category objects |
Get Account Details
curl "https://api.loopedin.io/v1/account"
-H "Content-Type: application/json"
-H "Authorization: Bearer API_KEY"
The above command returns JSON structured like this:
{
"id": "5ebre2026e123d000224361a1",
"name": "Acme Copr.",
"created": "2021-01-19T08:19:48.209Z",
"objectives": [
{
"id": "5c97a92ea576c80017fwff4w",
"title": "Increase Retention",
"color": "#ffffff"
},
{...}
],
"idea_categories": [
{
"id": "5c97a92ea576c80017fwff4w",
"title": "New idea",
"color": "#ffffff",
"bgcolor": "#1869fb"
},
{...}
],
"announcement_categories": [
{
"id": "5c97a92ea576c80017fwff4w",
"title": "New Feature",
"color": "#ffffff",
"bgcolor": "#1869fb"
},
{...}
],
"feedback_categories": [
{
"id": "6wd8a92ea576c80017fw98al",
"title": "Bug",
"color": "#000000",
"bgcolor": "#1869fb"
},
{...}
],
}
This endpoint retrieves details for a given account.
HTTP Request
GET https://api.loopedin.io/v1/account
Workspaces
The Workspace Object
{
"id": "5e8a1026e123d000224361a1",
"title": "RocketShip iOS Mobile App",
"description": "RocketShip for iOS is a mobile app designed to..",
"account": "5c673453d49bf62217537b57",
"slug": "rocketship-ios-mobile-app",
"roadmap": "5f4a1026e123d0002243618s",
"created": "2021-01-19T08:19:48.209Z",
"updated": "2021-01-29T18:14:28.209Z",
}
Parameter | Type | Description |
---|---|---|
id | string |
The id of the Workspace |
title | string |
The title of the Workspace |
description | string |
The description of the Workspace (HTML format) |
account | string |
The Account Id that the Workspace belongs to |
slug | string |
The URL slug of the Workspace (used for public roadmaps) |
roadmap | string |
The Workspace’s Roadmap Id |
created | string |
The date at which the Workspace was created |
updated | string |
The date at which the Workspace was last updated |
Get All Workspaces
curl "https://api.loopedin.io/v1/workspaces"
-H "Content-Type: application/json"
-H "Authorization: Bearer API_KEY"
The above command returns JSON structured like this:
{
"success": true,
"results": 10,
"workspaces": [
{
"id": "5e8a1026e123d000224361a1",
"title": "RocketShip iOS Mobile App",
"description": "RocketShip for iOS is a mobile app designed to..",
"account": "5c673453d49bf62217537b57",
"slug": "rocketship-ios-mobile-app",
"roadmap": "5f4a1026e123d0002243618s",
"created": "2021-01-19T08:19:48.209Z",
"updated": "2021-01-29T18:14:28.209Z",
},
{...},
{...}
]
This endpoint retrieves all workspaces for a given account.
HTTP Request
GET https://api.loopedin.io/v1/workspaces
Get Workspace
curl "https://api.loopedin.io/v1/workspaces/{id}"
-H "Content-Type: application/json"
-H "Authorization: Bearer API_KEY"
The above command returns JSON structured like this:
{
"id": "5e8a1026e123d000224361a1",
"title": "RocketShip iOS Mobile App",
"description": "RocketShip for iOS is a mobile app designed to..",
"account": "5c673453d49bf62217537b57",
"slug": "rocketship-ios-mobile-app",
"roadmap": "5f4a1026e123d0002243618s",
"logo": "https://link-to-image.png",
"created": "2021-01-19T08:19:48.209Z",
"updated": "2021-01-29T18:14:28.209Z",
}
This endpoint retrieves a specific Workspace.
HTTP Request
https://api.loopedin.io/v1/workspaces/{id}
URL Parameters
Parameter | Description |
---|---|
id | The ID of the Workspace to retrieve |
Roadmaps
The Roadmap Object
{
"id": "5e8a1026e123d000224361a1",
"title": "RocketShip iOS Roadmap",
"workspace": "6c663453d49bf62217537b82",
"account": "5c673453d49bf62217537b57",
"columns": [
{
"id": "5fg6692t39bf6221798fj2g",
"title": "In progress",
"cards": [
{
"id": "5c673482hw9bf62217537b90",
"title": "Roadmap card #1",
},
{...}
]
},
{...}
]
}
Parameter | Type | Description |
---|---|---|
id | string |
The id of the Roadmap |
title | string |
The title of the Roadmap |
workspace | string |
The Workspace that the Roadmap belongs to |
account | string |
The Account Id that the Roadmap belongs to |
columns | array |
An array of Roadmap Columns that are part of this Roadmap |
columns.cards | array |
An array of Roadmap Cards that are assigned to this Columns |
Get All Roadmaps
curl "https://api.loopedin.io/v1/roadmaps"
-H "Content-Type: application/json"
-H "Authorization: Bearer API_KEY"
The above command returns JSON structured like this:
{
"success": true,
"results": 10,
"roadmaps": [
{
"id": "5e8a1026e123d000224361a1",
"title": "RocketShip iOS Roadmap",
"workspace": "6c663453d49bf62217537b82",
"account": "5c673453d49bf62217537b57",
"columns": [
{
"id": "5fg6692t39bf6221798fj2g",
"title": "In progress",
"cards": [
{
"id": "5c673482hw9bf62217537b90",
"title": "Roadmap card #1",
},
{...}
]
},
{...}
]
},
{...},
{...}
]
This endpoint retrieves all Roadmaps for a given account.
HTTP Request
GET https://api.loopedin.io/v1/roadmaps
Get Roadmap
curl "https://api.loopedin.io/v1/roadmaps/{id}"
-H "Content-Type: application/json"
-H "Authorization: Bearer API_KEY"
The above command returns JSON structured like this:
{
"id": "5e8a1026e123d000224361a1",
"title": "RocketShip iOS Roadmap",
"workspace": "6c663453d49bf62217537b82",
"account": "5c673453d49bf62217537b57",
"columns": [
{
"id": "5fg6692t39bf6221798fj2g",
"title": "In progress",
"cards": [
{
"id": "5c673482hw9bf62217537b90",
"title": "Roadmap card #1",
},
{...}
]
},
{...}
]
}
This endpoint retrieves a specific Roadmap.
HTTP Request
https://api.loopedin.io/v1/roadmaps/{id}
URL Parameters
Parameter | Description |
---|---|
id | The ID of the Roadmap to retrieve |
Roadmap Cards
The Roadmap Card Object
{
"id": "5ebre2026e123d000224361a1",
"title": "Q2: Improve notifications and email alerts",
"summary": "Add more flexibility to the user notifications and provide an easier UI to config",
"description": "A longer description here.",
"workspace": "5e8a1026e123d000224361a1",
"roadmap": "5e8a1026e123d000224361a1",
"account": "5c673453d49bf62217537b57",
"column": {
"id": "5c673482hw9bf62217537b90",
"title": "In progress"
},
"objective": {
"id": "5c97a92ea576c80017fwff4w",
"title": "Increase Retention",
"color": "#ffffff"
},
"created": "2021-01-19T08:19:48.209Z",
"updated": "2021-01-29T18:14:28.209Z",
"completed": false,
"completed_date": "2021-01-29T18:14:28.209Z",
"public": true,
"archived": false,
"created_by": "Alex Smith",
"votes": 9,
"planned_for": "2021-05-19T08:19:48.209Z",
"idea": "6fd81453d49bf6221753715g",
"feedback": "6fd88392t39bf6221753752h",
"converted_to": "5fg6692t39bf6221798fj2g",
"features": [
{
"id": "5e8a1026e123d000224361a1",
"title": "Redesign user notifications screen"
{...}
},
{...}
],
"ideas": [
{
"id": "5c97a92ea576c80017fwff4w",
"title": "Please could you add the ability to add more notifications..."
},
{...}
],
"tags": ["tag1", "tag2", "tag3"],
"comments": [
{
"comment": "Great idea!",
"created_by": "James Williams",
"email": "j_williams@example.com",
"created": "2021-01-22T11:24:56.727Z"
},
{...}
],
"followers": [
{
"email": "j_williams@example.com",
"name": "James Williams"
},
{...}
]
}
Parameter | Type | Description |
---|---|---|
id | string |
The id of the Roadmap Card |
title | string |
The title of the Roadmap Card |
summary | string |
The summary of the Roadmap Card (HTML format) |
description | string |
The description of the Roadmap Card (HTML format) |
workspace | string |
The Workspace Id that the Roadmap Card belongs to |
roadmap | string |
The Roadmap Id that the Roadmap Card belongs to |
account | string |
The Account Id that the Roadmap Card belongs to |
column | object |
The Column that the Roadmap Card belongs to |
objective | object |
The objective of the Roadmap Card |
created | string |
The date at which the Roadmap Card was created |
updated | string |
The date at which the Roadmap Card was last updated |
completed | boolean |
Whether the Roadmap Card is complete or not |
completed_date | string |
The date at which the Roadmap Card was completed |
public | boolean |
When false the Roadmap Card will be hidden from
public views
|
archived | boolean |
Controls if an Roadmap Card is archived or not |
created_by | string |
The name of the user who created the Roadmap Card |
votes | number |
An integer count of the total number of votes the Roadmap Card has received |
planned_for | string |
The future date that the Roadmap Card is currently planned for |
idea | string |
The id of the Idea that was converted to this Roadmap Card |
feedback | string |
The id of the Feedback that was converted to this Roadmap Card |
converted_to | string |
The id of the Announcement this Roadmap Card has been converted into |
features | array |
An array of Features that have been added to this Roadmap Card |
ideas | array |
An array of Ideas that have been linked to this Roadmap Card |
tags | array |
An array of strings containing an Roadmap Card’s
tags
|
comments | array |
An array of objects containing comments on an
Roadmap Card
|
followers | array |
An array of objects containing followers on an
Roadmap Card
|
Get All Roadmap Cards
curl "https://api.loopedin.io/v1/roadmap-cards"
-H "Content-Type: application/json"
-H "Authorization: Bearer API_KEY"
The above command returns JSON structured like this:
{
"success": true,
"results": 10,
"roadmap_cards": [
{
"id": "5ebre2026e123d000224361a1",
"title": "Q2: Improve notifications and email alerts",
"summary": "Add more flexibility to the user notifications and provide an easier UI to config",
"description": "A longer description here.",
"workspace": "5e8a1026e123d000224361a1",
"roadmap": "5e8a1026e123d000224361a1",
"account": "5c673453d49bf62217537b57",
"column": {
"id": "5c673482hw9bf62217537b90",
"title": "In progress"
},
"objective": {
"id": "5c97a92ea576c80017fwff4w",
"title": "Increase Retention",
"color": "#ffffff"
},
"created": "2021-01-19T08:19:48.209Z",
"updated": "2021-01-29T18:14:28.209Z",
"completed": false,
"completed_date": "2021-01-29T18:14:28.209Z",
"public": true,
"archived": false,
"created_by": "Alex Smith",
"votes": 9,
"planned_for": "2021-05-19T08:19:48.209Z",
"idea": "6fd81453d49bf6221753715g",
"feedback": "6fd88392t39bf6221753752h",
"converted_to": "5fg6692t39bf6221798fj2g",
"features": [
{
"id": "5e8a1026e123d000224361a1",
"title": "Redesign user notifications screen"
{...}
},
{...}
],
"ideas": [
{
"id": "5c97a92ea576c80017fwff4w",
"title": "Please could you add the ability to add more notifications..."
},
{...}
],
"tags": ["tag1", "tag2", "tag3"],
"comments": [
{
"comment": "Great idea!",
"created_by": "James Williams",
"email": "j_williams@example.com",
"created": "2021-01-22T11:24:56.727Z"
},
{...}
],
"followers": [
{
"email": "j_williams@example.com",
"name": "James Williams"
},
{...}
]
},
{...},
{...}
]
This endpoint retrieves all Roadmap Cards for a given account.
HTTP Request
GET https://api.loopedin.io/v1/roadmap-cards
Query Parameters
Name | Type | Description |
---|---|---|
workspace_id | string |
Unique Workspace id - if provided, the Roadmap Cards for this workspace will be returned. |
completed | boolean |
Boolean value expecting true or false .
If true , completed Roadmap Cards will be returned.
If false , incomplete Ideas will be returned.
|
public | boolean |
Boolean value expecting true or false .
If true , public Roadmap Cards will be returned. If
false , private Roadmap Cards will be returned.
|
archived | boolean |
Boolean value expecting true or false .
If true , archived Roadmap Cards will be returned.
If false , active Roadmap Cards will be returned.
|
category | string |
String value expecting a unique Category id - if provided, only Roadmap Cards in this category will be returned. |
sort | string |
String value that controls the sort order of the results. See Sort Options below. |
Sort Options
Name | Description |
---|---|
created |
Expected values: created:asc or
created:desc
|
updated |
Expected values: updated:asc or
updated:desc
|
rank |
Expected values: rank:asc or rank:desc
|
Get Roadmap Card
curl "https://api.loopedin.io/v1/roadmap-cards/{id}"
-H "Content-Type: application/json"
-H "Authorization: Bearer API_KEY"
The above command returns JSON structured like this:
{
"id": "5ebre2026e123d000224361a1",
"title": "Q2: Improve notifications and email alerts",
"summary": "Add more flexibility to the user notifications and provide an easier UI to config",
"description": "A longer description here.",
"workspace": "5e8a1026e123d000224361a1",
"roadmap": "5e8a1026e123d000224361a1",
"account": "5c673453d49bf62217537b57",
"column": {
"id": "5c673482hw9bf62217537b90",
"title": "In progress"
},
"objective": {
"id": "5c97a92ea576c80017fwff4w",
"title": "Increase Retention",
"color": "#ffffff"
},
"created": "2021-01-19T08:19:48.209Z",
"updated": "2021-01-29T18:14:28.209Z",
"completed": false,
"completed_date": "2021-01-29T18:14:28.209Z",
"public": true,
"archived": false,
"created_by": "Alex Smith",
"votes": 9,
"planned_for": "2021-05-19T08:19:48.209Z",
"idea": "6fd81453d49bf6221753715g",
"feedback": "6fd88392t39bf6221753752h",
"converted_to": "5fg6692t39bf6221798fj2g",
"features": [
{
"id": "5e8a1026e123d000224361a1",
"title": "Redesign user notifications screen"
{...}
},
{...}
],
"ideas": [
{
"id": "5c97a92ea576c80017fwff4w",
"title": "Please could you add the ability to add more notifications..."
},
{...}
],
"tags": ["tag1", "tag2", "tag3"],
"comments": [
{
"comment": "Great idea!",
"created_by": "James Williams",
"email": "j_williams@example.com",
"created": "2021-01-22T11:24:56.727Z"
},
{...}
],
"followers": [
{
"email": "j_williams@example.com",
"name": "James Williams"
},
{...}
]
}
This endpoint retrieves a specific Roadmap Card.
HTTP Request
https://api.loopedin.io/v1/roadmap-cards/{id}
URL Parameters
Parameter | Description |
---|---|
id | Roadmap Card Id or Jira id associated to roadmap card. |
Create Roadmap Card
curl "https://api.loopedin.io/v1/roadmap-cards"
-X POST
-H "Content-Type: application/json"
-H "Authorization: Bearer API_KEY"
-d `{"workspace_id": "5e8a1026e123d000224361a1", "column": "5c97a92ea576c80017fwff4w", "objective": "6a37a92ea576c80017f6223s", "title": "Q2: Improve notifications and email alerts","summary":"Add more flexibility to the user notifications and provide an easier UI to config" }`
The above command returns the inserted Roadmap Card structured like this:
{
"id": "5ebre2026e123d000224361a1",
"title": "Q2: Improve notifications and email alerts",
"summary": "Add more flexibility to the user notifications and provide an easier UI to config",
"workspace": "5e8a1026e123d000224361a1",
"roadmap": "5e8a1026e123d000224361a1",
"account": "5c673453d49bf62217537b57",
"column": {
"id": "5c97a92ea576c80017fwff4w",
"title": "In progress"
},
"objective": {
"id": "6a37a92ea576c80017f6223s",
"title": "Increase Retention",
"color": "#ffffff"
},
"created": "2021-01-19T08:19:48.209Z",
"completed": false,
"public": true,
"archived": false,
"votes": 9,
"planned_for": "2021-05-19T08:19:48.209Z",
"followers": [
{
"email": "j_williams@example.com",
"name": "James Williams"
},
{...}
]
}
This endpoint creates a new Roadmap Card.
HTTP Request
POST https://api.loopedin.io/v1/roadmap-cards
Request Body
Parameter | Type | Description |
---|---|---|
workspace_id | string |
The id of the Workspace that the Roadmap Card should be created
in required
|
column | string |
The id of the Roadmap Column that the Roadmap Card should be
created in required
|
objective | string |
The id of the Roadmap Card’s Roadmap Objective
required
|
title | string |
The title of the Roadmap Card
required
|
summary | string |
The short summary of the Roadmap Card optional
|
description | string |
The description of the Roadmap Card optional |
public | boolean |
When false the Roadmap Card will be hidden from
public views optional
|
planned_for | string |
The planned date of the Roadmap Card releasing in format
YYYY-MM-DD - optional - defaults to
empty
|
Update Roadmap Card
curl "https://api.loopedin.io/v1/roadmap-cards/{id}"
-X PUT
-H "Content-Type: application/json"
-H "Authorization: Bearer API_KEY"
-d `{"title": "Updated title here", "description":"And an updated description can go here."}`
The above command returns JSON structured like this:
{
"success": true,
"updated": true
}
This endpoint updates a specific Roadmap Card.
HTTP Request
PUT https://api.loopedin.io/v1/roadmap-cards/{id}
URL Parameters
Parameter | Description |
---|---|
ID | Roadmap Card Id or Jira id associated to roadmap card. |
Request Body
Parameter | Type | Description |
---|---|---|
title | string |
The title of the Roadmap Card |
summary | string |
The summary of the Roadmap Card (displayed on the card) |
description | string |
The description of the Roadmap Card |
column | string |
The id of the Roadmap Column that the Roadmap Card should be updated to |
objective | string |
The Roadmap Objective Id of the Roadmap Card |
planned_for | string |
The planned date of the Roadmap Card releasing in format
YYYY-MM-DD
|
completed | boolean |
Whether the Roadmap Card is complete or not |
completed_date | string |
The completed date of the Roadmap Card in format
YYYY-MM-DD
|
public | boolean |
When false the Roadmap Card will be hidden from
public views
|
archived | boolean |
Controls if an Roadmap Card is archived or not |
Delete Roadmap Card
curl "https://api.loopedin.io/v1/roadmap-cards/{id}"
-X DELETE
-H "Content-Type: application/json"
-H "Authorization: Bearer API_KEY"
The above command returns JSON structured like this:
{
"success": true,
"deleted": true
}
This endpoint delete a specific Roadmap Card.
HTTP Request
DELETE https://api.loopedin.io/v1/roadmap-cards/{id}
URL Parameters
Parameter | Description |
---|---|
id | Roadmap Card Id or Jira id associated to roadmap card. |
Roadmap Cards Feature
The Roadmap Card Feature Object
{
"id":"5ebre2026e123d000224361a1",
"title":"User can login using SAML",
"description":"A longer description here.",
"workspace":"5e8a1026e123d000224361a1",
"roadmap":"5e8a1026e123d000224361a1",
"account":"5c673453d49bf62217537b57",
"roadmap_card":"5c673453d49bf62217537b51",
"created":"2021-01-29T18:14:28.209Z",
"updated":"2021-01-30T18:14:28.209Z",
"created_by":"Alex Smith",
"votes": 9,
"effort":"s",
"impact":"l",
"completed":false,
"public":true,
"archived":false,
"rank": 20,
"progress": 25,
}
Parameter | Type | Description |
---|---|---|
id | string |
The id of the Roadmap Card Feature |
title | string |
The title of the Roadmap Card Feature |
description | string |
The description of the Roadmap Card Feature(HTML format) |
workspace | string |
The Workspace Id that the Roadmap Card Feature belongs to |
roadmap | string |
The Roadmap Id that the Roadmap Card Feature belongs to |
account | string |
The Account Id that the Roadmap Card Feature belongs to |
roadmap_card | string |
The Roadmap Card Id that the Roadmap Card Feature belongs to |
created | string |
The date at which the Roadmap Card Feature was created |
updated | string |
The date at which the Roadmap Card Feature was updated |
created_by | string |
The name of the user who created the Roadmap Card Feature |
votes | number |
An integer count of the total number of votes the Roadmap Card Feature has received |
effort | string |
Effort category of Roadmap Card Feature |
impact | string |
Impact category of Roadmap Card Feature |
completed | boolean |
Whether the Roadmap Card Feature is complete or not |
public | boolean |
When false the Roadmap Card Feature will be hidden
from public views
|
archived | boolean |
Controls if an Roadmap Card Feature is archived or not |
rank | string |
Rank of Roadmap Card Feature |
progress | string |
Progress of Roadmap Card Feature |
Get All Roadmap Cards Feature
curl "https://api.loopedin.io/v1/roadmap-cards/{id}/feature"
-H "Content-Type: application/json"
-H "Authorization: Bearer API_KEY"
The above command returns JSON structured like this:
{
},
"success": true,
"results": 5,
"totalResults": 5,
"page": 1,
"totalPages": 1,
"feature": [
{
"id": "5ebre2026e123d000224361a1",
"title": "User can login using SAML",
"description": "Add more flexibility to the user notifications and provide an easier UI to config",
"description": "A longer description here.",
"workspace": "5e8a1026e123d000224361a1",
"roadmap": "5e8a1026e123d000224361a1",
"account": "5c673453d49bf62217537b57",
"roadmap_card": "5c673453d49bf62217537b51",
"created": "2021-01-29T18:14:28.209Z",
"updated": "2021-01-30T18:14:28.209Z",
"created_by": "Alex Smith",
"votes": 9,
"effort": "s",
"impact": "l",
"completed": false,
"public": true,
"archived": false,
"rank": 20,
"progress": 25,
{...}
]
}
This endpoint retrieves all Roadmap Cards Features for a given account.
HTTP Request
GET
https://api.loopedin.io/v1/roadmap-cards/{id}/feature
URL Parameters
Parameter | Description |
---|---|
id | Roadmap Card Id or Jira id associated to roadmap card. |
Query Parameters
Name | Type | Description |
---|---|---|
page | number |
Expected values: 1, 2, etc for the number of page |
Get Roadmap Card Feature
curl "https://api.loopedin.io/v1/roadmap-cards/{id}/feature/{feature_id}"
-H "Content-Type: application/json"
-H "Authorization: Bearer API_KEY"
The above command returns JSON structured like this:
{
"id":"5ebre2026e123d000224361a1" ,
"title":"User can login using SAML" ,
"description":"A longer description here." ,
"workspace":"5e8a1026e123d000224361a1" ,
"roadmap":"5e8a1026e123d000224361a1" ,
"account":"5c673453d49bf62217537b57" ,
"roadmap_card":"5c673453d49bf62217537b51" ,
"created":"2021-01-29T18:14:28.209Z" ,
"updated":"2021-01-30T18:14:28.209Z" ,
"created_by":"Alex Smith" ,
"votes": 9 ,
"effort":"s" ,
"impact":"l" ,
"completed":false ,
"public":true ,
"archived":false ,
"rank": 20 ,
"progress": 25 ,
}
This endpoint retrieves a specific Roadmap Card feature.
HTTP Request
GET
https://api.loopedin.io/v1/roadmap-cards/{id}/feature/{feature_id}
URL Parameters
Parameter | Description |
---|---|
id | Roadmap Card Id or Jira id associated to roadmap card. |
feature_id | The ID of the Roadmap Card Feature. |
Create Roadmap Card Feature
curl "https://api.loopedin.io/v1/roadmap-cards/{id}/feature"
-X POST
-H "Content-Type: application/json"
-H "Authorization: Bearer API_KEY"
-d `{"title": "User can login using SAML", "id": "5e8a1026e123d000224361a1", "description": "A longer description here.", "progress": 25, "effort": "s", "impact": "l", "public": true, "archived": false, "completed": false, "completed_date": "2021-01-29T18:14:28.209Z", "workspace": "5e8a1026e123d000224361a1"}`
The above command returns the inserted Roadmap Card feature structured like this:
{
"id":"5ebre2026e123d000224361a1" ,
"title":"User can login using SAML" ,
"description":"A longer description here." ,
"workspace":"5e8a1026e123d000224361a1" ,
"roadmap":"5e8a1026e123d000224361a1" ,
"account":"5c673453d49bf62217537b57" ,
"roadmap_card":"5c673453d49bf62217537b51" ,
"created":"2021-01-29T18:14:28.209Z" ,
"updated":"2021-01-30T18:14:28.209Z" ,
"created_by":"Alex Smith" ,
"votes": 9 ,
"effort":"s" ,
"impact":"l" ,
"completed":false ,
"public":true ,
"archived":false ,
"rank": 20 ,
"progress": 25 ,
}
This endpoint creates a new Roadmap Card feature.
HTTP Request
POST
https://api.loopedin.io/v1/roadmap-cards/{id}/feature
URL Parameters
Parameter | Description |
---|---|
id | Roadmap Card Id or Jira id associated to roadmap card. |
Request Body
Parameter | Type | Description |
---|---|---|
workspace | string |
The id of the Workspace that the Roadmap Card feature should be
created in required
|
title | string |
The title of the Roadmap Card Feature
required
|
description | string |
The description of the Roadmap Card Feature
optional
|
public | boolean |
When false the Roadmap Card Feature will be hidden
from public views optional
|
archived | string |
When false the Roadmap Card Feature will be
consider as archived optional
|
progress | number |
An integer representing the progress of an Roadmap Card Feature.
Expected values:
number between 0-100 multiple of
5
|
effort | string |
An string value to represent effort of the Roadmap Card Feature.
Expected values:
xs, s, m, l, xl
|
impact | string |
An string value to represent impact of the Roadmap Card Feature.
Expected values:
xs, s, m, l, xl
|
completed | boolean |
When true the Roadmap Card Feature will be consider
as completed optional
|
completed_date | string |
An string value to represent completed date of the Roadmap Card
Feature. Expected values:
YYYY-MM-DD
|
Update Roadmap Card Feature
curl "https://api.loopedin.io/v1/roadmap-cards/{id}/feature/{feature_id}"
-X POST
-H "Content-Type: application/json"
-H "Authorization: Bearer API_KEY"
-d `{"title": "User can login using SAML", "id": "5e8a1026e123d000224361a1", "description": "A longer description here.", "progress": 25, "effort": "s", "impact": "l", "public": true, "archived": false, "completed": false, "completed_date": "2021-01-29T18:14:28.209Z", "workspace": "5e8a1026e123d000224361a1"}`
The above command returns JSON structured like this:
{
"success": true,
"updated": true
}
This endpoint updates a specific Roadmap Card feature.
HTTP Request
PUT
https://api.loopedin.io/v1/roadmap-cards/{id}/feature/{feature_id}
URL Parameters
Parameter | Description |
---|---|
id | Roadmap Card Id or Jira id associated to roadmap card. |
feature_id | The ID of the Roadmap Card Feature. |
Request Body
Parameter | Type | Description |
---|---|---|
workspace | string |
The id of the Workspace that the Roadmap Card Feature should be
created in required
|
title | string |
The title of the Roadmap Card Feature
required
|
description | string |
The description of the Roadmap Card Feature
optional
|
public | boolean |
When false the Roadmap Card Feature will be hidden
from public views optional
|
archived | string |
When false the Roadmap Card Feature will be
consider as archived optional
|
progress | number |
An integer representing the progress of an Roadmap Card Feature.
Expected values:
number between 0-100 multiple of
5
|
effort | string |
An string value to represent effort of the Roadmap Card Feature.
Expected values:
xs, s, m, l, xl
|
impact | string |
An string value to represent impact of the Roadmap Card Feature.
Expected values:
xs, s, m, l, xl
|
completed | boolean |
When true the Roadmap Card Feature will be consider
as completed optional
|
completed_date | string |
An string value to represent completed date of the Roadmap Card
Feature. Expected values:
YYYY-MM-DD
|
Delete Roadmap Card Feature
curl "https://api.loopedin.io/v1/roadmap-cards/{id}/feature/{feature_id}"
-X DELETE
-H "Content-Type: application/json"
-H "Authorization: Bearer API_KEY"
The above command returns JSON structured like this:
{
"success": true,
"deleted" : true
}
This endpoint deletes a specific Roadmap Card Feature.
HTTP Request
DELETE
https://api.loopedin.io/v1/roadmap-cards/{id}/feature/{feature_id}
URL Parameters
Parameter | Description |
---|---|
id | Roadmap Card Id or Jira id associated to roadmap card. |
feature_id | The ID of the Roadmap Card Feature. |
Ideas
The Idea Object
{
"id": "5ebre2026e123d000224361a1",
"title": "Improve notifications and email alerts",
"description": "Add more flexibility to the user notifications and provide an easier UI to config",
"workspace": "5e8a1026e123d000224361a1",
"account": "5c673453d49bf62217537b57",
"category": {
"id": "5c97a92ea576c80017fwff4w",
"title": "New idea",
"color": "#ffffff",
"bgcolor": "#1869fb"
},
"created": "2021-01-19T08:19:48.209Z",
"updated": "2021-01-29T18:14:28.209Z",
"completed": false,
"public": true,
"value": 5,
"effort": 4,
"priority": 1,
"archived": false,
"created_by": "Alex Smith",
"votes": 9,
"roadmap_card": "5d881453d49bf62217537b32",
"merged_to": "6fd81453d49bf6221753715g",
"converted_to": "6fd88392t39bf6221753752h",
"duplicated_from": "5fg6692t39bf6221798fj2g",
"merges": ["5fg6692t39bf6221798fj2g", "6fd88392t39bf6221753752h"],
"tags": ["tag1", "tag2", "tag3"],
"comments": [
{
"comment": "Great idea!",
"created_by": "James Williams",
"email": "j_williams@example.com",
"created": "2021-01-22T11:24:56.727Z"
},
{...}
],
"followers": [
{
"email": "j_williams@example.com",
"name": "James Williams"
},
{...}
]
}
Parameter | Type | Description |
---|---|---|
id | string |
The id of the Idea |
title | string |
The title of the Idea |
description | string |
The description of the Idea (HTML format) |
workspace | string |
The Workspace Id that the Idea belongs to |
account | string |
The Account Id that the Idea belongs to |
category | object |
The category of the Idea |
created | string |
The date at which the Idea was created |
updated | string |
The date at which the Idea was last updated |
completed | boolean |
Whether the Idea is complete or not |
public | boolean |
When false the Idea will be hidden from public
views
|
value | number |
An integer representing the value of an Idea. Expected values:
number between 0-5
|
effort | number |
An integer representing the effort of an Idea. Expected values:
number between 0-5
|
priority | number |
An integer representing the priority of an Idea. Auto-calculated based on value & effort |
archived | boolean |
Controls if an Idea is archived or not |
created_by | string |
The name of the user who created the Idea |
votes | number |
An integer count of the total number of votes the Idea has received |
roadmap_card | string |
The id of the related roadmap card |
merged_to | string |
The id of the Idea that it has been merged into |
converted_to | string |
The id of the roadmap card that it has been converted into |
duplicated_from | string |
The id of the Idea that it has been duplicated from |
merges | array |
An array of Idea ids that have been merged with this Idea |
tags | array |
An array of strings containing an Idea’s tags
|
comments | array |
An array of objects containing comments on an Idea
|
followers | array |
An array of objects containing followers on an Idea
|
Get All Ideas
curl "https://api.loopedin.io/v1/ideas"
-H "Content-Type: application/json"
-H "Authorization: Bearer API_KEY"
The above command returns JSON structured like this:
{
"success": true,
"results": 50,
"totalResults": 100,
"page": 1,
"totalPages": 2,
"ideas": [
{
"id": "5ebre2026e123d000224361a1",
"title": "Improve notifications and email alerts",
"description": "Add more flexibility to the user notifications and provide an easier UI to config",
"workspace": "5e8a1026e123d000224361a1",
"account": "5c673453d49bf62217537b57",
"category": {
"id": "5c97a92ea576c80017fwff4w",
"title": "New idea",
"color": "#ffffff",
"bgcolor": "#1869fb"
},
"created": "2021-01-19T08:19:48.209Z",
"updated": "2021-01-29T18:14:28.209Z",
"completed": false,
"public": true,
"value": 5,
"effort": 4,
"priority": 1,
"archived": false,
"created_by": "Alex Smith",
"votes": 9,
"roadmap_card": "5d881453d49bf62217537b32",
"merged_to": "6fd81453d49bf6221753715g",
"converted_to": "6fd88392t39bf6221753752h",
"duplicated_from": "5fg6692t39bf6221798fj2g",
"merges": ["5fg6692t39bf6221798fj2g", "6fd88392t39bf6221753752h"],
"tags": ["tag1", "tag2", "tag3"],
"comments": [
{
"comment": "Great idea!",
"created_by": "James Williams",
"email": "j_williams@example.com",
"created": "2021-01-22T11:24:56.727Z"
},
{...}
],
"followers": [
{
"email": "j_williams@example.com",
"name": "James Williams"
},
{...}
]
},
{...},
{...}
]
This endpoint retrieves all ideas for a given account.
HTTP Request
GET https://api.loopedin.io/v1/ideas
Query Parameters
Name | Type | Description |
---|---|---|
workspace_id | string |
Unique Workspace id - if provided, the ideas for this workspace will be returned. |
completed | boolean |
Boolean value expecting true or false .
If true , completed Ideas will be returned. If
false , incomplete Ideas will be returned.
|
public | boolean |
Boolean value expecting true or false .
If true , public Ideas will be returned. If
false , private Ideas will be returned.
|
archived | boolean |
Boolean value expecting true or false .
If true , archived Ideas will be returned. If
false , active Ideas will be returned.
|
category | string |
String value expecting a unique Category id - if provided, only Ideas in this category will be returned. |
sort | string |
String value that controls the sort order of the results. See Sort Options below. |
Sort Options
Name | Description |
---|---|
created |
Expected values: created:asc or
created:desc
|
updated |
Expected values: updated:asc or
updated:desc
|
rank |
Expected values: rank:asc or rank:desc
|
effort |
Expected values: effort:asc or
effort:desc
|
value |
Expected values: value:asc or
value:desc
|
page | Expected values: 1 , 2 , etc |
Get Idea
curl "https://api.loopedin.io/v1/ideas/{id}"
-H "Content-Type: application/json"
-H "Authorization: Bearer API_KEY"
The above command returns JSON structured like this:
{
"id": "5ebre2026e123d000224361a1",
"title": "Improve notifications and email alerts",
"description": "Add more flexibility to the user notifications and provide an easier UI to config",
"workspace": "5e8a1026e123d000224361a1",
"account": "5c673453d49bf62217537b57",
"category": {
"id": "5c97a92ea576c80017fwff4w",
"title": "New idea",
"color": "#ffffff",
"bgcolor": "#1869fb"
},
"created": "2021-01-19T08:19:48.209Z",
"updated": "2021-01-29T18:14:28.209Z",
"completed": false,
"public": true,
"value": 5,
"effort": 4,
"priority": 1,
"archived": false,
"created_by": "Alex Smith",
"votes": 9,
"roadmap_card": "5d881453d49bf62217537b32",
"merged_to": "6fd81453d49bf6221753715g",
"converted_to": "6fd88392t39bf6221753752h",
"duplicated_from": "5fg6692t39bf6221798fj2g",
"merges": ["5fg6692t39bf6221798fj2g", "6fd88392t39bf6221753752h"],
"tags": ["tag1", "tag2", "tag3"],
"comments": [
{
"comment": "Great idea!",
"created_by": "James Williams",
"email": "j_williams@example.com",
"created": "2021-01-22T11:24:56.727Z"
},
{...}
],
"followers": [
{
"email": "j_williams@example.com",
"name": "James Williams"
},
{...}
]
}
This endpoint retrieves a specific Idea.
HTTP Request
GET https://api.loopedin.io/v1/ideas/{id}
URL Parameters
Parameter | Description |
---|---|
id | The ID of the Idea to retrieve |
Create Idea
curl "https://api.loopedin.io/v1/ideas"
-X POST
-H "Content-Type: application/json"
-H "Authorization: Bearer API_KEY"
-d `{"workspace_id": "5e8a1026e123d000224361a1", "title": "Awesome new idea", "description":"A bit more detail can go here."}`
The above command returns the inserted Idea structured like this:
{
"id": "5ebre2026e123d000224361a1",
"title": "Awesome new idea",
"description": "A bit more detail can go here.",
"workspace": "5e8a1026e123d000224361a1",
"account": "5c673453d49bf62217537b57",
"category": {
"id": "5c97a92ea576c80017fwff4w",
"title": "New idea",
"color": "#ffffff",
"bgcolor": "#1869fb"
},
"created": "2021-01-29T08:19:48.209Z",
"updated": "2021-01-29T08:19:48.209Z",
"completed": false,
"public": false,
"value": 0,
"effort": 0,
"priority": 0,
"archived": false,
"created_by": "Alex Smith",
"votes": 0
}
This endpoint creates a new Idea.
HTTP Request
POST https://api.loopedin.io/v1/ideas
Request Body
Parameter | Type | Description |
---|---|---|
workspace_id | string |
The id of the workspace that the Idea should be created in
required
|
title | string |
The title of the Idea required
|
description | string |
The description of the Idea optional |
public | boolean |
When false the Idea will be hidden from public
views optional
|
value | number |
An integer representing the value of an Idea. Expected values:
number between 0-5 (1 = low, 5 = high)
optional
|
effort | number |
An integer representing the effort of an Idea. Expected values:
number between 0-5 (1 = low, 5 = high)
optional
|
Update Idea
curl "https://api.loopedin.io/v1/ideas/{id}"
-X PUT
-H "Content-Type: application/json"
-H "Authorization: Bearer API_KEY"
-d `{"title": "Updated title here", "description":"And an updated description can go here."}`
The above command returns JSON structured like this:
{
"success": true,
"updated": true
}
This endpoint updates a specific Idea.
HTTP Request
PUT https://api.loopedin.io/v1/ideas/{id}
URL Parameters
Parameter | Description |
---|---|
ID | The ID of the Idea to update |
Request Body
Parameter | Type | Description |
---|---|---|
title | string |
The title of the Idea |
description | string |
The description of the Idea |
category | string |
The Category Id of the Idea |
completed | boolean |
Whether the Idea is complete or not |
public | boolean |
When false the Idea will be hidden from public
views
|
value | number |
An integer representing the value of an Idea. Expected values:
number between 0-5 (1 = low, 5 = high)
|
effort | number |
An integer representing the effort of an Idea. Expected values:
number between 0-5 (1 = low, 5 = high)
|
archived | boolean |
Controls if an Idea is archived or not |
Delete Idea
curl "https://api.loopedin.io/v1/ideas/{id}"
-X DELETE
-H "Content-Type: application/json"
-H "Authorization: Bearer API_KEY"
The above command returns JSON structured like this:
{
"success": true,
"deleted" : true
}
This endpoint deletes a specific Idea.
HTTP Request
DELETE https://api.loopedin.io/v1/ideas/{id}
URL Parameters
Parameter | Description |
---|---|
ID | The ID of the Idea to delete |
Announcements
The Announcement Object
{
"id": "5ebre2026e123d000224361a1",
"title": "Our much anticipated feature has landed!",
"description": "We're excited to announce that our latest feature has finally arrived...",
"workspace": "5e8a1026e123d000224361a1",
"account": "5c673453d49bf62217537b57",
"status": "published",
"category": {
"id": "5c97a92ea576c80017fwff4w",
"title": "New Feature",
"color": "#ffffff",
"bgcolor": "#1869fb"
},
"created": "2021-01-19T08:19:48.209Z",
"updated": "2021-01-29T18:14:28.209Z",
"published": "2021-01-29T18:14:28.209Z",
"completed": false,
"public": true,
"archived": false,
"created_by": "Alex Smith",
"likes": 9,
"dislikes": 1,
"neutrals": 2,
"pinned": true,
"converted_from": "6fd88392t39bf6221753752h",
"roadmap_cards": ["5fg6692t39bf6221798fj2g", "6fd88392t39bf6221753752h"],
"features": ["5c97a92ea576c80017fwff4w"],
"feedback": [
{
"message": "I love this update!!",
"sentiment": "positive",
"created_by": "Alex Smith",
"email": "asmith@example.com",
"created": "2021-01-22T11:24:56.727Z"
},
{...}
],
"comments": [
{
"comment": "Great idea!",
"created_by": "James Williams",
"email": "j_williams@example.com",
"created": "2021-01-22T11:24:56.727Z"
},
{...}
]
}
Parameter | Type | Description |
---|---|---|
id | string |
The id of the Announcement |
title | string |
The title of the Announcement |
description | string |
The description of the Announcement (HTML format) |
workspace | string |
The Workspace Id that the Announcement belongs to |
account | string |
The Account Id that the Announcement belongs to |
status | string |
The status of the Announcement published or
draft
|
category | object |
The category of the Announcement |
created | string |
The date at which the Announcement was created |
updated | string |
The date at which the Announcement was last updated |
published | string |
The date at which the Announcement was published |
completed | boolean |
Whether the Announcement is complete or not |
public | boolean |
When false the Announcement will be hidden from
public views
|
created_by | string |
The name of the user who created the Announcement |
likes | number |
An integer count of the total number of likes the Announcement has received |
dislikes | number |
An integer count of the total number of dislikes the Announcement has received |
neutrals | number |
An integer count of the total number of neutrals the Announcement has received |
pinned | boolean |
Whether or not the Announcement is pinned |
converted_from | string |
The id of the Roadmap Card that it has been converted from |
roadmap_cards | array |
An array of Roadmap Card ids that have been added to the Announcement |
features | array |
An array of Feature ids that have been added to the Announcement |
feedback | array |
An array of objects containing feedback received on
the Announcement
|
comments | array |
An array of objects containing comments on an
Announcement
|
Get All Announcements
curl "https://api.loopedin.io/v1/updates"
-H "Content-Type: application/json"
-H "Authorization: Bearer API_KEY"
The above command returns JSON structured like this:
{
"success": true,
"results": 50,
"totalResults": 100,
"page": 1,
"totalPages": 2,
"updates": [
{
"id": "5ebre2026e123d000224361a1",
"title": "Our much anticipated feature has landed!",
"description": "We're excited to announce that our latest feature has finally arrived...",
"workspace": "5e8a1026e123d000224361a1",
"account": "5c673453d49bf62217537b57",
"status": "published",
"category": {
"id": "5c97a92ea576c80017fwff4w",
"title": "New Feature",
"color": "#ffffff",
"bgcolor": "#1869fb"
},
"created": "2021-01-19T08:19:48.209Z",
"updated": "2021-01-29T18:14:28.209Z",
"published": "2021-01-29T18:14:28.209Z",
"public": true,
"created_by": "Alex Smith",
"likes": 9,
"dislikes": 1,
"neutrals": 2,
"pinned": true,
"converted_from": "6fd88392t39bf6221753752h",
"roadmap_cards": ["5fg6692t39bf6221798fj2g", "6fd88392t39bf6221753752h"],
"features": ["5c97a92ea576c80017fwff4w"],
"feedback": [
{
"message": "I love this update!!",
"sentiment": "positive",
"created_by": "Alex Smith",
"email": "asmith@example.com",
"created": "2021-01-22T11:24:56.727Z"
},
{...}
],
"comments": [
{
"comment": "Great idea!",
"created_by": "James Williams",
"email": "j_williams@example.com",
"created": "2021-01-22T11:24:56.727Z"
},
{...}
]
},
{...},
{...}
]
This endpoint retrieves all Announcements for a given account.
HTTP Request
GET https://api.loopedin.io/v1/updates
Query Parameters
Name | Type | Description |
---|---|---|
workspace_id | string |
Unique Workspace id - if provided, the Announcements for this workspace will be returned. |
public | boolean |
Boolean value expecting true or false .
If true , public Announcements will be returned. If
false , private Announcements will be returned.
|
category | string |
String value expecting a unique Category id - if provided, only Announcements in this category will be returned. |
status | string |
String value expecting draft or
published - if provided, only Announcements
matching this will be returned.
|
pinned | boolean |
Boolean value expecting true or false .
If true , pinned Announcements will be returned. If
false , Announcements that are not pinned will be
returned.
|
sort | string |
String value that controls the sort order of the results. See Sort Options below. |
Sort Options
Name | Description |
---|---|
created |
Expected values: created:asc or
created:desc
|
updated |
Expected values: updated:asc or
updated:desc
|
published |
Expected values: published:asc or
published:desc
|
page | Expected values: 1 , 2 , etc |
Get Announcementt
curl "https://api.loopedin.io/v1/updates/{id}"
-H "Content-Type: application/json"
-H "Authorization: Bearer API_KEY"
The above command returns JSON structured like this:
{
"id": "5ebre2026e123d000224361a1",
"title": "Our much anticipated feature has landed!",
"description": "We're excited to announce that our latest feature has finally arrived...",
"workspace": "5e8a1026e123d000224361a1",
"account": "5c673453d49bf62217537b57",
"status": "published",
"category": {
"id": "5c97a92ea576c80017fwff4w",
"title": "New Feature",
"color": "#ffffff",
"bgcolor": "#1869fb"
},
"created": "2021-01-19T08:19:48.209Z",
"updated": "2021-01-29T18:14:28.209Z",
"published": "2021-01-29T18:14:28.209Z",
"public": true,
"created_by": "Alex Smith",
"likes": 9,
"dislikes": 1,
"neutrals": 2,
"pinned": true,
"converted_from": "6fd88392t39bf6221753752h",
"roadmap_cards": ["5fg6692t39bf6221798fj2g", "6fd88392t39bf6221753752h"],
"features": ["5c97a92ea576c80017fwff4w"],
"feedback": [
{
"message": "I love this update!!",
"sentiment": "positive",
"created_by": "Alex Smith",
"email": "asmith@example.com",
"created": "2021-01-22T11:24:56.727Z"
},
{...}
],
"comments": [
{
"comment": "Great idea!",
"created_by": "James Williams",
"email": "j_williams@example.com",
"created": "2021-01-22T11:24:56.727Z"
},
{...}
]
}
This endpoint retrieves a specific Announcement.
HTTP Request
GET https://api.loopedin.io/v1/updates/{id}
URL Parameters
Parameter | Description |
---|---|
id | The ID of the Announcement to retrieve |
Create Announcement
curl "https://api.loopedin.io/v1/updates"
-X POST
-H "Content-Type: application/json"
-H "Authorization: Bearer API_KEY"
-d `{"workspace_id": "5e8a1026e123d000224361a1", "title": "Our much anticipated feature has landed!", "description":"We're excited to announce that our latest feature has finally arrived...","category":"5c97a92ea576c80017fwff4w"}`
The above command returns the inserted Announcement structured like this:
{
"id": "5ebre2026e123d000224361a1",
"title": "Our much anticipated feature has landed!",
"description": "We're excited to announce that our latest feature has finally arrived...",
"workspace": "5e8a1026e123d000224361a1",
"account": "5c673453d49bf62217537b57",
"status": "draft",
"category": {
"id": "5c97a92ea576c80017fwff4w",
"title": "New Feature",
"color": "#ffffff",
"bgcolor": "#1869fb"
},
"created": "2021-01-19T08:19:48.209Z",
"updated": "2021-01-29T18:14:28.209Z",
"published": "2021-01-29T23:00:00.000Z",
"public": true,
"created_by": "Alex Smith",
"likes": 0,
"dislikes": 0,
"neutrals": 0,
"pinned": false
}
This endpoint creates a new Announcement.
HTTP Request
POST https://api.loopedin.io/v1/updates
Request Body
Parameter | Type | Description |
---|---|---|
workspace_id | string |
The id of the workspace that the Announcement should be created
in required
|
title | string |
The title of the Announcement
required
|
description | string |
The description of the Announcement optional |
category | string |
The category id of the Announcement
required
|
published | string |
The published date of the Announcement in format
YYYY-MM-DD optional - defaults to
current day
|
status | string |
The status of the Announcement optional - defaults
to draft
|
public | boolean |
When false the Announcement will be hidden from
public views optional
|
Update Announcement
curl "https://api.loopedin.io/v1/updates/{id}"
-X PUT
-H "Content-Type: application/json"
-H "Authorization: Bearer API_KEY"
-d `{"title": "Updated title here", "description":"And an updated description can go here."}`
The above command returns JSON structured like this:
{
"success": true,
"updated": true
}
This endpoint updates a specific Announcement.
HTTP Request
PUT https://api.loopedin.io/v1/updates/{id}
URL Parameters
Parameter | Description |
---|---|
ID | The ID of the Announcement to update |
Request Body
Parameter | Type | Description |
---|---|---|
title | string |
The title of the Announcement |
description | string |
The description of the Announcement |
category | string |
The Category id of the Announcement |
published | string |
The published date of the Announcement in format
YYYY-MM-DD
|
status | string |
The status of the Announcement. Expected values
draft or published
|
public | boolean |
When false the Announcement will be hidden from
public views
|
Delete Announcement
curl "https://api.loopedin.io/v1/updates/{id}"
-X DELETE
-H "Content-Type: application/json"
-H "Authorization: Bearer API_KEY"
The above command returns JSON structured like this:
{
"success": true,
"deleted" : true
}
This endpoint deletes a specific Announcement.
HTTP Request
DELETE https://api.loopedin.io/v1/updates/{id}
URL Parameters
Parameter | Description |
---|---|
ID | The ID of the Announcement to delete |
Feedback Boards
The Feedback Board Object
{
"id": "5e8a1026e123d000224361a1",
"title": "Translation Requests Board",
"description":"Please submit your translation requests below.",
"workspace": "6c663453d49bf62217537b82",
"account": "5c673453d49bf62217537b57",
"public":true
}
Parameter | Type | Description |
---|---|---|
id | string |
The id of the Feedback Board |
title | string |
The title of the Feedback Board |
description | string |
The description of the Feedback Board |
workspace | string |
The Workspace that the Feedback Board belongs to |
account | string |
The Account Id that the Feedback Board belongs to |
public | boolean |
Whether or not the Feedback Board is public |
Get All Feedback Boards
curl "https://api.loopedin.io/v1/feedback-boards"
-H "Content-Type: application/json"
-H "Authorization: Bearer API_KEY"
The above command returns JSON structured like this:
{
"success": true,
"results": 10,
"totalResults": 20,
"page": 1,
"totalPages": 1,
"feedback_boards": [
{
"id": "5e8a1026e123d000224361a1",
"title": "Translation Requests Board",
"description":"Please submit your translation requests below.",
"workspace": "6c663453d49bf62217537b82",
"account": "5c673453d49bf62217537b57",
"public":true
},
{...},
{...}
]
This endpoint retrieves all Feedback Boards for a given account.
HTTP Request
GET https://api.loopedin.io/v1/feedback-boards
Query Parameters
Name | Type | Description |
---|---|---|
workspace_id | string |
Unique Workspace id - if provided, the roadmap board for this workspace will be returned. |
Get Feedback Board
curl "https://api.loopedin.io/v1/feedback-boards/{id}"
-H "Content-Type: application/json"
-H "Authorization: Bearer API_KEY"
The above command returns JSON structured like this:
{
"id": "5e8a1026e123d000224361a1",
"title": "Translation Requests Board",
"description":"Please submit your translation requests below.",
"workspace": "6c663453d49bf62217537b82",
"account": "5c673453d49bf62217537b57",
"public":true
}
This endpoint retrieves a specific Feedback Board.
HTTP Request
https://api.loopedin.io/v1/feedback-boards/{id}
URL Parameters
Parameter | Description |
---|---|
id | The ID of the Feedback Board to retrieve |
Create Feedback Board
curl "https://api.loopedin.io/v1/feedback-boards"
-X POST
-H "Content-Type: application/json"
-H "Authorization: Bearer API_KEY"
-d `{"workspace_id": "660aa4c104c0478da320d21a", "title": "test board", "description":"A bit more detail can go here."}`
The above command returns the inserted Idea structured like this:
{
"id": "6614d9087d77ce49d3441170",
"title": "test board",
"description": "A bit more detail can go here.",
"slug": "test-board",
"showDescription": true,
"showVotes": true,
"public": true,
"publicSubmissions": true,
"workspace": "660aa4c104c0478da320d21a",
"account": "660aa41e04c0478da320d203",
"created_by": "660aa41e04c0478da320d218",
"created": "2024-04-09T05:58:32.602Z",
"updated": "2024-04-09T05:58:32.602Z",
}
This endpoint creates a new Feedback Board.
HTTP Request
POST https://api.loopedin.io/v1/feedback-boards
Request Body
Parameter | Type | Description |
---|---|---|
workspace | string |
The id of the workspace that the Feedback Board should be created in
required
|
title | string |
The title of the Feedback Board required
|
description | string |
The description of the Feedback Board optional |
showVotes | boolean |
When false the Vote will be hidden from public
views optional
|
publicSubmissions | boolean |
When false feedback board hidden from public view
optional
|
public | boolean |
When false feedback board hidden from public view
optional
|
Update Feedback Board
curl "https://api.loopedin.io/v1/feedback-boards/{id}"
-X PUT
-H "Content-Type: application/json"
-H "Authorization: Bearer API_KEY"
-d `{"title": "Updated title here", "description":"And an updated description can go here."}`
The above command returns JSON structured like this:
{
"success": true,
"updated": true
}
This endpoint updates a specific Feedback Board.
HTTP Request
PUT https://api.loopedin.io/v1/feedback-boards/{id}
URL Parameters
Parameter | Description |
---|---|
ID | The ID of the Feedback Board to update |
Request Body
Parameter | Type | Description |
---|---|---|
title | string |
The title of the Feedback Board optional
|
description | string |
The description of the Feedback Board optional |
public | Boolean |
When false the Feedback Board will be hidden from public
views optional
|
showVotes | Boolean |
When false the votes on Feedback Board will be hidden from public
views optional
|
publicSubmissions | boolean |
When false the feedback public submission will be hidden from public
views optional
|
workspace | string |
The Workspace Id that the Feedback board belongs to required
|
Delete Feedback Board
curl "https://api.loopedin.io/v1/feedback-boards/{id}"
-X DELETE
-H "Content-Type: application/json"
-H "Authorization: Bearer API_KEY"
The above command returns JSON structured like this:
{
"success": true,
"deleted" : true
}
This endpoint deletes a specific Feedback Board.
HTTP Request
DELETE https://api.loopedin.io/v1/feedback-boards/{id}
URL Parameters
Parameter | Description |
---|---|
ID | The ID of the Feedback Board to delete |
Feedback
The Feedback Object
{
"id": "5e8a1026e123d000224361a1",
"title": "Please add Dutch translations",
"description":"Please add Dutch translations to the public pages of the website.",
"workspace": "6c663453d49bf62217537b82",
"account": "5c673453d49bf62217537b57",
"category": {
"id": "5c97a92ea576c80017fwff4w",
"title": "New request",
"color": "#ffffff",
"bgcolor": "#1869fb"
},
"created": "2021-01-19T08:19:48.209Z",
"updated": "2021-01-29T18:14:28.209Z",
"completed": false,
"public": true,
"archived": false,
"created_by": "Alex Smith",
"votes": 9,
"roadmap_card": "5d881453d49bf62217537b32",
"converted_to": "6fd88392t39bf6221753752h",
"duplicated_from": "5fg6692t39bf6221798fj2g",
"merges": ["5fg6692t39bf6221798fj2g", "6fd88392t39bf6221753752h"],
"tags": ["tag1", "tag2", "tag3"],
"comments": [
{
"comment": "Great idea!",
"created_by": "James Williams",
"email": "j_williams@example.com",
"created": "2021-01-22T11:24:56.727Z"
},
{...}
],
"followers": [
{
"email": "j_williams@example.com",
"name": "James Williams"
},
{...}
]
}
Parameter | Type | Description |
---|---|---|
id | string |
The id of the Feedback |
title | string |
The title of the Feedback |
description | string |
The description of the Feedback (HTML format) |
workspace | string |
The Workspace Id that the Feedback belongs to |
account | string |
The Account Id that the Feedback belongs to |
category | object |
The category of the Feedback |
created | string |
The date at which the Feedback was created |
updated | string |
The date at which the Feedback was last updated |
completed | boolean |
Whether the Feedback is complete or not |
public | boolean |
When false the Feedback will be hidden from public
views
|
archived | boolean |
Controls if an Feedback is archived or not |
created_by | string |
The name of the user who created the Feedback |
votes | number |
An integer count of the total number of votes the Feedback has received |
roadmap_card | string |
The id of the related Roadmap Card |
converted_to | string |
The id of the Idea that it has been converted into |
tags | array |
An array of strings containing an Feedback’s tags
|
comments | array |
An array of objects containing comments on an
Feedback
|
followers | array |
An array of objects containing followers on an
Feedback
|
Get All Feedback for a given Feedback Board
curl "https://api.loopedin.io/v1/feedback-boards/{id}/feedback"
-H "Content-Type: application/json"
-H "Authorization: Bearer API_KEY"
The above command returns JSON structured like this:
{
"id": "5e8a1026e123d000224361a1",
"title": "Translation Requests Board",
"description":"Please submit your translation requests below.",
"workspace": "6c663453d49bf62217537b82",
"account": "5c673453d49bf62217537b57",
"public":true,
"feedback": [
{
"id": "5ebre2026e123d000224361a1",
"title": "Improve notifications and email alerts",
"description": "Add more flexibility to the user notifications and provide an easier UI to config",
"created": "2021-01-19T08:19:48.209Z",
"updated": "2021-01-29T18:14:28.209Z",
"completed": false,
"public": true
},
{...},
{...}
]
This endpoint retrieves all Feedback for a given Feedback Board.
HTTP Request
GET https://api.loopedin.io/v1/feedback-boards/{id}/feedback
URL Parameters
Parameter | Description |
---|---|
id | The ID of the Feedback Board to retrieve Feedback for |
Get Feedback
curl "https://api.loopedin.io/v1/feedback/{id}"
-H "Content-Type: application/json"
-H "Authorization: Bearer API_KEY"
The above command returns JSON structured like this:
{
"id": "5e8a1026e123d000224361a1",
"title": "Please add Dutch translations",
"description":"Please add Dutch translations to the public pages of the website.",
"workspace": "6c663453d49bf62217537b82",
"account": "5c673453d49bf62217537b57",
"category": {
"id": "5c97a92ea576c80017fwff4w",
"title": "New request",
"color": "#ffffff",
"bgcolor": "#1869fb"
},
"created": "2021-01-19T08:19:48.209Z",
"updated": "2021-01-29T18:14:28.209Z",
"completed": false,
"public": true,
"archived": false,
"created_by": "Alex Smith",
"votes": 9,
"roadmap_card": "5d881453d49bf62217537b32",
"converted_to": "6fd88392t39bf6221753752h",
"duplicated_from": "5fg6692t39bf6221798fj2g",
"merges": ["5fg6692t39bf6221798fj2g", "6fd88392t39bf6221753752h"],
"tags": ["tag1", "tag2", "tag3"],
"comments": [
{
"comment": "Great idea!",
"created_by": "James Williams",
"email": "j_williams@example.com",
"created": "2021-01-22T11:24:56.727Z"
},
{...}
],
"followers": [
{
"email": "j_williams@example.com",
"name": "James Williams"
},
{...}
]
}
This endpoint retrieves a specific Feedback.
HTTP Request
GET https://api.loopedin.io/v1/feedback/{id}
URL Parameters
Parameter | Description |
---|---|
id | The ID of the Feedback to retrieve |
Create Feedback
curl "https://api.loopedin.io/v1/feedback"
-X POST
-H "Content-Type: application/json"
-H "Authorization: Bearer API_KEY"
-d `{"workspace_id": "660aa4c104c0478da320d21a", "category": "660aa41e04c0478da320d213", "title": "test board", "description":"A bit more detail can go here."}`
The above command returns the inserted Idea structured like this:
{
"id": "6614d9087d77ce49d3441170",
"title": "test board",
"description": "A bit more detail can go here.",
"board": "6614cdcce0ed9b42861ca642",
"category": "660aa41e04c0478da320d213",
"account": "660aa41e04c0478da320d203",
"workspace": "660aa4c104c0478da320d21a",
"created_By": "Ekta Prajapati",
"public": true,
"complete": false,
"publicSubmissions": false,
"created": "2024-04-09T07:47:37.008Z",
"updated": "2024-04-09T07:47:37.008Z"
}
This endpoint creates a new Feedback.
HTTP Request
POST https://api.loopedin.io/v1/feedback
Request Body
Parameter | Type | Description |
---|---|---|
workspace | string |
The id of the workspace that the Feedback should be created in
required
|
board | string |
The id of the board id that the Feedback should be created in
required
|
title | string |
The title of the Feedback required
|
description | string |
The description of the Feedback optional |
category | string |
The id of the category that the feedback should be created in
required
|
Update Feedback
curl "https://api.loopedin.io/v1/feedback/{id}"
-X PUT
-H "Content-Type: application/json"
-H "Authorization: Bearer API_KEY"
-d `{"title": "Updated title here", "description":"And an updated description can go here."}`
The above command returns JSON structured like this:
{
"success": true,
"updated": true
}
This endpoint updates a specific Feedback.
HTTP Request
PUT https://api.loopedin.io/v1/feedback/{id}
URL Parameters
Parameter | Description |
---|---|
ID | The ID of the Feedback to update |
Request Body
Parameter | Type | Description |
---|---|---|
title | string |
The title of the Feedback optional
|
summary | string |
The summary of the Feedback optional |
public | Boolean |
When false the Feedback will be hidden from public
views optional
|
category | string |
The category of the Feedbackoptional
|
tags | array |
An array of string containing feedback's tag optional
|
Delete Feedback
curl "https://api.loopedin.io/v1/feedback/{id}"
-X DELETE
-H "Content-Type: application/json"
-H "Authorization: Bearer API_KEY"
The above command returns JSON structured like this:
{
"success": true,
"deleted" : true
}
This endpoint deletes a specific Idea.
HTTP Request
DELETE https://api.loopedin.io/v1/feedback/{id}
URL Parameters
Parameter | Description |
---|---|
ID | The ID of the Feedback to delete |
Articles
The Articles Object
{
"id": "5ebre2026e123d000224361a1",
"title": "Our much anticipated feature has landed!",
"description": "We're excited to announce that our latest feature has finally arrived...",
"workspace": "5e8a1026e123d000224361a1",
"account": "5c673453d49bf62217537b57",
"category": "4c673453d49bf62217537b09",
"slug": "our-much-anticipated-feature-has-landed",
"seo_title": "seo title",
"seo_description": "seo description",
"created": "2021-01-19T08:19:48.209Z",
"publish_date": "2021-01-19T08:19:48.209Z",
"status": "draft",
"public": true,
"archived": true,
"pinned": true
"search_index": true
}
Parameter | Type | Description |
---|---|---|
id | string |
The id of the Article |
title | string |
The title of the Article |
description | string |
The description of the Article (HTML format) |
workspace | string |
The Workspace Id that the Article belongs to |
account | string |
The Account Id that the Article belongs to |
category | string |
The Category Id that the Article belongs to |
slug | string |
The URL slug of the Article (used for public articles) |
seo_title | string |
The seo title of the Article |
seo_description | string |
The seo description of the Article |
created | string |
The date at which the Article was created |
publish_date | string |
The date at which the Article was Publish |
status | string |
The status of the Article published or
draft
|
public | boolean |
When false the Article will be hidden from
public views
|
archived | boolean |
Controls if an Article is archived or not |
pinned | boolean |
Whether or not the Article is pinned |
search_index | boolean |
Whether or not the Article is search index |
Get All Articles
curl "https://api.loopedin.io/v1/article"
-H "Content-Type: application/json"
-H "Authorization: Bearer API_KEY"
The above command returns JSON structured like this:
{
"success": true,
"results": 50,
"totalResults": 100,
"page": 1,
"totalPages": 2,
"articles": [
{
"id": "5ebre2026e123d000224361a1",
"title": "Our much anticipated feature has landed!",
"description": "We're excited to announce that our latest feature has finally arrived...",
"workspace": "5e8a1026e123d000224361a1",
"account": "5c673453d49bf62217537b57",
"category": "4c673453d49bf62217537b09",
"slug": "our-much-anticipated-feature-has-landed",
"created": "2021-01-19T08:19:48.209Z",
"status": "draft",
"public": true,
"archived": true,
"pinned": true
},
{...}
]
}
This endpoint retrieves all Article for a given account.
HTTP Request
GET https://api.loopedin.io/v1/article
Query Parameters
Name | Type | Description |
---|---|---|
workspace_id | string |
Unique Workspace id, the Article for this
workspace will be returned. required |
category_id | string |
String value expecting a unique Category id - if provided, only Article in this category will be returned. |
public | boolean |
Boolean value expecting true or false .
If true , public article will be returned.
If false , non-public article will be returned.
|
featured | boolean |
Boolean value expecting true or false .
If true , featured article will be returned. If
false , non-featured article will be returned.
|
archived | boolean |
Boolean value expecting true or false .
If true , archived Article will be returned.
If false , active Article will be returned.
|
Get Article
curl "https://api.loopedin.io/v1/article/{id}"
-H "Content-Type: application/json"
-H "Authorization: Bearer API_KEY"
The above command returns JSON structured like this:
{
"success": true,
"article": {
"id": "5e8a1026e123d000224361a1",
"title": "Improve notifications and email alerts",
"description": "Add more flexibility to the user notifications and provide an easier UI to config",
"workspace": "5e8a1026e123d000224361a1",
"account": "5c673453d49bf62217537b57",
"category": "5c673453d49bf62217537b57",
"slug": "improve-notifications-and-email-alerts",
"created": "2021-01-19T08:19:48.209Z",
"status": "draft",
"public": true,
"archived": false,
"pinned": false,
}
}
This endpoint retrieves a specific Article.
HTTP Request
GET https://api.loopedin.io/v1/article/{id}
URL Parameters
Parameter | Description |
---|---|
id | The ID of the Article to retrieve |
Create Article
curl "https://api.loopedin.io/v1/article"
-X POST
-H "Content-Type: application/json"
-H "Authorization: Bearer API_KEY"
-d `{"workspace_id": "5e8a1026e123d000224361a1", "category_id": "64fb1c2564ee420049571c09", "title":"Awesome new article", "description":"A bit more detail can go here."}`
The above command returns the inserted Article structured like this:
{
"success": true,
"category": {
"id": "5ebre2026e123d000224361a1",
"title": "Awesome new article",
"description": "A bit more detail can go here.",
"workspace": "5e8a1026e123d000224361a1",
"account": "5c673453d49bf62217537b57",
"category": "64fb1c2564ee420049571c09",
"slug": "awesome-new-article",
"created": "2021-01-29T08:19:48.209Z",
"status": "published",
"public": false,
"archived": false,
"pinned": false,
},
}
This endpoint creates a new Article.
HTTP Request
POST https://api.loopedin.io/v1/article
Request Body
Parameter | Type | Description |
---|---|---|
workspace_id | string |
The id of the workspace that the Article should be created in
required
|
category_id | string |
The id of the category that the Article should be created in
required
|
title | string |
The title of the Article required
|
description | string |
The description of the Article optional |
seo_title | string |
The seo title of the Article optional |
seo_description | string |
The seo description of the Article optional |
public | boolean |
When false the Article will be hidden from public
views optional
|
status | string |
The status of the Article published or
draft
|
archived | boolean |
Controls if an Article is archived or not |
featured | boolean |
Controls if an Article is featured or not |
search_index | boolean |
Controls if an Article is search index or not |
pinned | boolean |
Controls if an Article is pinned or not |
Update Article
curl "https://api.loopedin.io/v1/article/{id}"
-X PUT
-H "Content-Type: application/json"
-H "Authorization: Bearer API_KEY"
-d `{"title": "Updated title here", "description":"And an updated description can go here."}`
The above command returns JSON structured like this:
{
"success": true,
"updated": true
}
This endpoint updates a specific Article.
HTTP Request
PUT https://api.loopedin.io/v1/article/{id}
URL Parameters
Parameter | Description |
---|---|
ID | The ID of the Article to update |
Request Body
Parameter | Type | Description |
---|---|---|
title | string |
The title of the Article optional
|
description | string |
The description of the Article optional |
seo_title | string |
The seo title of the Article optional |
seo_description | string |
The seo description of the Article optional |
public | boolean |
When false the Article will be hidden from public
views optional
|
status | string |
The status of the Article published or
draft
|
archived | boolean |
Controls if an Article is archived or not |
featured | boolean |
Controls if an Article is featured or not |
search_index | boolean |
Controls if an Article is search index or not |
pinned | boolean |
Controls if an Article is pinned or not |
Delete Article
curl "https://api.loopedin.io/v1/article/{id}"
-X DELETE
-H "Content-Type: application/json"
-H "Authorization: Bearer API_KEY"
The above command returns JSON structured like this:
{
"success": true,
"deleted" : true
}
This endpoint deletes a specific Article.
HTTP Request
DELETE https://api.loopedin.io/v1/article/{id}
URL Parameters
Parameter | Description |
---|---|
ID | The ID of the Article to delete |
Articles
The Article Category Object
{
"id": "5ebre2026e123d000224361a1",
"title": "Our much anticipated feature has landed!",
"description": "We're excited to announce that our latest feature has finally arrived...",
"workspace": "5e8a1026e123d000224361a1",
"account": "5c673453d49bf62217537b57",
"slug": "our-much-anticipated-feature-has-landed",
"seo_title": "seo title",
"seo_description": "seo description",
"created": "2021-01-19T08:19:48.209Z",
"updated": "2021-01-19T08:19:48.209Z",
"public": true,
"featured": true,
"archived": true,
"search_index": true
}
Parameter | Type | Description |
---|---|---|
id | string |
The id of the Article Category |
title | string |
The title of the Article Category |
description | string |
The description of the Article Category (HTML format) |
workspace | string |
The Workspace Id that the Article Category belongs to |
account | string |
The Account Id that the Article Category belongs to |
slug | string |
The URL slug of the Article Category (used for public Article categories) |
seo_title | string |
The seo title of the Article Categoryoptional |
seo_description | string |
The seo description of the Article Categoryoptional |
created | string |
The date at which the Article Category was created |
updated | string |
The date at which the Article Category was updated |
public | boolean |
When false the Article Category will be hidden from
public views
|
featured | boolean |
Controls if an Article Category is featured or not |
archived | boolean |
Controls if an Article Category is archived or not |
search_index | boolean |
Whether or not the Article Category is search index |
Get All Article Categories
curl "https://api.loopedin.io/v1/article-category"
-H "Content-Type: application/json"
-H "Authorization: Bearer API_KEY"
The above command returns JSON structured like this:
{
"success": true,
"results": 50,
"totalResults": 100,
"page": 1,
"totalPages": 2,
"categories": [
{
"id": "5ebre2026e123d000224361a1",
"title": "Our much anticipated feature has landed!",
"description": "We're excited to announce that our latest feature has finally arrived...",
"workspace": "5e8a1026e123d000224361a1",
"account": "5c673453d49bf62217537b57",
"slug": "our-much-anticipated-feature-has-landed",
"seo_title": "seo title",
"seo_description": "seo description",
"created": "2021-01-19T08:19:48.209Z",
"updated": "2021-01-19T08:19:48.209Z",
"public": true,
"featured": true,
"archived": true,
"search_index": true
},
{...},
{...}
]
]
This endpoint retrieves all article categories for a given account.
HTTP Request
GET https://api.loopedin.io/v1/article-category
Query Parameters
Name | Type | Description |
---|---|---|
workspace_id | string |
Unique Workspace id - if provided, the Article category for this workspace will be returned. |
public | boolean |
Boolean value expecting true or false .
If true , public Article Category will be returned. If
false , private Article Category will be returned.
|
featured | boolean |
Boolean value expecting true or false .
If true , feature Article Category will be returned. If
false , feature Article Category will be returned.
|
archived | boolean |
Boolean value expecting true or false .
If true , archived Article category will be returned. If
false , active Article category will be returned.
|
Get Article Category
curl "https://api.loopedin.io/v1/article-category/{id}"
-H "Content-Type: application/json"
-H "Authorization: Bearer API_KEY"
The above command returns JSON structured like this:
{
"success": true,
"category": {
"id": "5e8a1026e123d000224361a1",
"title": "Improve notifications and email alerts",
"description": "Add more flexibility to the user notifications and provide an easier UI to config",
"workspace": "5e8a1026e123d000224361a1",
"account": "5c673453d49bf62217537b57",
"slug": "improve-notifications-and-email-alerts",
"seo_title": "seo title",
"seo_description": "seo description",
"created": "2021-01-19T08:19:48.209Z",
"updated": "2021-01-19T08:19:48.209Z",
"public": true,
"featured": true,
"archived": true,
"search_index": true
}
}
This endpoint retrieves a specific Article Category.
HTTP Request
GET https://api.loopedin.io/v1/article-category/{id}
URL Parameters
Parameter | Description |
---|---|
id | The ID of the Article Category to retrieve |
Create Article Category
curl "https://api.loopedin.io/v1/article-category"
-X POST
-H "Content-Type: application/json"
-H "Authorization: Bearer API_KEY"
-d `{"workspace_id": "5e8a1026e123d000224361a1", "category_id": "64fb1c2564ee420049571c09", "title":"Awesome new article category, "description":"A bit more detail can go here."}`
The above command returns the inserted Article Category structured like this:
{
"success": true,
"category": {
"id": "5ebre2026e123d000224361a1",
"title": "Awesome new article category",
"description": "A bit more detail can go here.",
"workspace": "5e8a1026e123d000224361a1",
"account": "5c673453d49bf62217537b57",
"category": "64fb1c2564ee420049571c09",
"slug": "awesome-new-article-category",
"created": "2021-01-29T08:19:48.209Z",
"status": "published",
"public": false,
"archived": false,
"pinned": false,
},
}
This endpoint creates a new Article Category.
HTTP Request
POST https://api.loopedin.io/v1/article-cateogry
Request Body
Parameter | Type | Description |
---|---|---|
workspace_id | string |
The id of the workspace that the Article Category should be created in
required
|
title | string |
The title of the Article Category required
|
description | string |
The description of the Article Category optional |
seo_title | string |
The seo title of the Article Category optional |
seo_description | string |
The seo description of the Article Category optional |
public | boolean |
When false the Article Category will be hidden from public
views optional
|
archived | boolean |
Controls if an Article Category is archived or not |
featured | boolean |
Controls if an Article Category is featured or not |
search_index | boolean |
Controls if an Article Category is search index or not |
Update Article Category
curl "https://api.loopedin.io/v1/article-category/{id}"
-X PUT
-H "Content-Type: application/json"
-H "Authorization: Bearer API_KEY"
-d `{"title": "Updated title here", "description":"And an updated description can go here."}`
The above command returns JSON structured like this:
{
"success": true,
"updated": true
}
This endpoint updates a specific Article Category.
HTTP Request
PUT https://api.loopedin.io/v1/article-category/{id}
URL Parameters
Parameter | Description |
---|---|
ID | The ID of the Article Category to update |
Request Body
Parameter | Type | Description |
---|---|---|
title | string |
The title of the Article Category optional
|
description | string |
The description of the Article Category optional |
seo_title | string |
The seo title of the Article Category optional |
seo_description | string |
The seo description of the Article Category optional |
public | boolean |
When false the Article Category will be hidden from public
views optional
|
archived | boolean |
Controls if an Article Category is archived or not |
featured | boolean |
Controls if an Article Category is featured or not |
search_index | boolean |
Controls if an Article Category is search index or not |
Delete Article Category
curl "https://api.loopedin.io/v1/article-category/{id}"
-X DELETE
-H "Content-Type: application/json"
-H "Authorization: Bearer API_KEY"
The above command returns JSON structured like this:
{
"success": true,
"deleted" : true
}
This endpoint deletes a specific Article Category.
HTTP Request
DELETE https://api.loopedin.io/v1/article-category/{id}
URL Parameters
Parameter | Description |
---|---|
ID | The ID of the Article Category to delete |
Webhooks
The Webhook Object
{
"event": "idea.created",
"date": "2021-01-19T08:19:48.209Z",
"data": {
"id": "5c97a92ea576c80017fwff4w",
"title": "Please add support for exporting data",
"created_by": "example@loopedin.io",
...
}
}
Parameter | Type | Description |
---|---|---|
event | string |
The event type of the Webhook (see Webhook events below) |
date | string |
The date at which the Webhook event was triggered |
data | object |
An object containing relevant data for this event |
Webhook Events
Webhooks can be created via your admin settings page https://app.loopedin.io/settings/webhooks
To register new Webhooks, you must enter:
Parameter | Type | Description |
---|---|---|
Title | string |
A friendly name for your Webhooks endpoint |
Endpoint URL | string |
The URL where Webhook events should be sent to |
Events to send | array |
One or many events that should be sent to the above URL |
All Webhooks must be created via the admin user interface at the moment.
As part of the Webhook setup, you can subscribe to any of the below Webhook events.
Ideas
-
idea.created
: when a new Idea is created (including when received via your Ideas board) -
idea.updated
: when an Idea is updated -
idea.deleted
: when an Idea is deleted -
idea.completed
: when an Idea is marked as complete -
idea.pushed_to_roadmap
: when an Idea is pushed to the Roadmap -
idea.added_to_card
: when an Idea is added to a Roadmap Card -
idea.vote_added
: when an Idea receives a new vote (including votes via your Ideas board) -
idea.vote_removed
: when an Idea loses a vote (including votes via your Ideas board)
Roadmap Cards
-
roadmap_card.created
: when a new Roadmap card is created -
roadmap_card.updated
: when a Roadmap Card is updated -
roadmap_card.deleted
: when a Roadmap Card is deleted -
roadmap_card.completed
: when a Roadmap Card is marked as complete -
roadmap_card.vote_added
: when a Roadmap Card receives a new vote (including votes via your public Roadmap) -
roadmap_card.vote_removed
: when a Roadmap Card loses a vote (including votes via your public Roadmap)
Announcements
-
announcement.created
: when a new Announcement is created -
announcement.updated
: when an Announcement is updated -
announcement.published
: when an Announcement is published -
announcement.deleted
: when a Announcement is deleted -
announcement.response_received
: when an Announcement receives a new feedback response (via your public page as well as your Widgets) -
announcement.emoji_response_received
: when an Announcement receives a new emoji response (via your public page as well as your Widgets)
Feedback
-
feedback.created
: when new Feedback is created (including when received via your Feedback boards) -
feedback.updated
: when Feedback is updated -
feedback.deleted
: when Feedback is deleted -
feedback.completed
: when Feedback is marked as complete -
feedback.converted_to_idea
: when Feedback is converted to an Idea -
feedback.pushed_to_roadmap
: when Feedback is pushed to the Roadmap -
feedback.vote_added
: when Feedback receives a new vote (including votes via your Feedback boards) -
feedback.vote_removed
: when Feedback loses a vote (including votes via your Feedback boards)
Comments
-
comment.created
: when a new Comment is created (including when received via any of your public boards) -
comment.updated
: when a Comment is updated -
comment.deleted
: when a Comment is deleted
Subscribers
-
subscriber.new
: when a user subscribes to your Updates feed (via Widget or via Standalone page) -
subscriber.lost
: when a user unsubscribes from your Updates feed (via Widget or via Standalone page)
Error Codes
Our API uses the following error codes:
Error Code | Meaning |
---|---|
400 | Bad Request – Your request is invalid. |
401 | Unauthorized – Your API key is wrong. |
403 | Forbidden – You do not have access to the requested resource. |
404 | Not Found – The specified resource could not be found. |
429 | Too Many Requests – Slow down! |
500 | Internal Server Error – We had a problem with our server. Try again later. |
503 | Service Unavailable – We’re temporarily offline for maintenance. Please try again later. |
Changelog
Date | Change |
---|---|
19th April 2021 | Public API version 0.0.1 published for early acess users. |
26th April 2021 | Public API version 0.0.1 fully launched to all customers. |
18th August 2021 | Webhook support added. |
3rd September 2021 | Additional Webhooks added (Subscribers). |
7th February 2022 | Feedback Boards endpoints added; Feedback endpoints added; Update Roadmap Card endpoint added. |
16th May 2022 | Roadmap Card additions: ability to set “Planned For” date when creating; and the ability to set column when updating. |