---
title: IdeaScale REST API
description: API Overview
---

[Skip to content](https://help.ideascale.com/ideascale-rest-api-library#main-content)

English

Show submenu for translations

[![IdeaScale](https://help.ideascale.com/hs-fs/hubfs/ideascale-logo.png?width=223&height=31&name=ideascale-logo.png)](https://help.ideascale.com/?hsLang=en)

Open main navigation

Close main navigation

- English
  
  Show submenu for translations
- [Go to ideascale.com](https://ideascale.com/)

[Go to ideascale.com](https://ideascale.com/)

 Hi!👋 How can we help you today?

- There are no suggestions because the search field is empty.

1. [IdeaScale Support Center](https://help.ideascale.com/?hsLang=en)
2. [Community Settings - Integrations](https://help.ideascale.com/community-settings-integrations?hsLang=en)
3. [Developer API](https://help.ideascale.com/community-settings-integrations?hsLang=en#developer-api)

# IdeaScale REST API

## API Overview

---

***Path: Workspace Homepage \>\> Navigation Panel \>\> Settings \>\> Community \>\> Integrations \>\> Developer API***

| What is the IdeaScale REST API? |
| --- |
| The IdeaScale REST API is a RESTful API, based on the HTTPS protocol and using JSON for data transfer, that provides methods for retrieving and modifying workspace and community data for use in external integrations, mashups, and other consumable formats. |

The IdeaScale REST API documents the endpoints available for workspace and community data so that a community can be further automated or integrated with internal or home-grown software solutions. IdeaScale's architecture is designed for maximum integration with custom applications, allowing an organization to use the platform according to its own preferences. 

The[API library](https://a.ideascaleapp.com/api-docs/index.html) is enriched over time with additional endpoints, and this article covers the environment requirements for systems connecting to the API set; it does not cover a customer's environment as a whole.

---

### Role Permissions

1. Administrator: Has access to the API, including administrative-only endpoints such as emailing a group.
2. Moderator: Has access to the API.

**TABLE OF CONTENTS**

[Getting Started](https://help.ideascale.com/ideascale-rest-api-library#started)  
[Authentication](https://help.ideascale.com/ideascale-rest-api-library#Authentication)  
[URL](https://help.ideascale.com/ideascale-rest-api-library#URL)  
[Example API Endpoints](https://help.ideascale.com/ideascale-rest-api-library#Sample_API)  
[Create New Members](https://help.ideascale.com/ideascale-rest-api-library#New_Members)  
[Vote on Idea](https://help.ideascale.com/ideascale-rest-api-library#Vote)  
[Email Members](https://help.ideascale.com/ideascale-rest-api-library#Email)  
<https://help.ideascale.com/ideascale-rest-api-library#Success>ResponseCodes  
<https://help.ideascale.com/ideascale-rest-api-library#OrderKeys>Order Keys  
[Known API Issues](https://help.ideascale.com/ideascale-rest-api-library#KnownAPIIssues)  
[Assumptions](https://help.ideascale.com/ideascale-rest-api-library#assumption)  
[Frequently Asked Questions](https://help.ideascale.com/ideascale-rest-api-library#FrequentlyAskedQuestions)

---

### Get Started

**How to request an API token:**

API token access is available to members who are assigned a community role, such as Community Administrator, Community Moderator, or a custom role.

![Screenshot 2026-08-25 at 7.16.06 AM](https://help.ideascale.com/hs-fs/hubfs/Screenshot%202026-08-25%20at%207.16.06%20AM.png?width=670&height=306&name=Screenshot%202026-08-25%20at%207.16.06%20AM.png)

To access the API, an eligible member creates an API Token from their IdeaScale profile:

1. Navigate to Profile \>\> Settings \>\> API Tokens.
2. Select Request New API Token.
3. Complete the required details in the form and submit to generate the token.

***Profile \>\> Settings \>\> API Tokens***

![38](https://help.ideascale.com/hs-fs/hubfs/38.webp?width=670&height=396&name=38.webp)

Selecting "Request New API Token" opens a form where you can generate a new API token by providing the required details. 

![39](https://help.ideascale.com/hs-fs/hubfs/39.webp?width=367&height=443&name=39.webp)

![40](https://help.ideascale.com/hs-fs/hubfs/40.webp?width=670&height=301&name=40.webp)

API access is granted on a per-member basis, and a member can hold one or more API tokens. Each token inherits the permissions of the member's IdeaScale user role — a standard member's token is limited to the calls permitted to that role, while an Administrator's token receives admin-level permission. An API token is separate for each community within the Workspace; the correct token must be used to retrieve or modify data for the corresponding community.

Every API request must include the appropriate member's API token in the HTTPS request header, using the header field name api\_token.

**Note: API token is separate of each community within the workspace.**

---

### Authentication

Authentication is based on API tokens. The token generated in Getting Started must be included in every REST call, passed in an HTTPS header named api\_token.

![41](https://help.ideascale.com/hs-fs/hubfs/41.webp?width=670&height=143&name=41.webp)

<https://help.ideascale.com/single-sign-on-sso-new-admin-panel?hsLang=en>  
The IdeaScale REST API is a RESTful API based on the HTTPS protocol and supports JSON format data transfers.

---

### URL

An IdeaScale REST API URL has three components:

1. Workspace URL: The URL of the Workspace the API call applies to.
2. API Version: Identifies the version of the IdeaScale REST API being used.
3. Method URL: The specific call being made.

For example, an API call to retrieve the set of campaigns for a community under the Workspace apitest.ideascale.com, using version 1.0 of the API, is: [https://apitest.ideascale.com/a/rest/v1/campaigns](https://apitest.ideascale.com/a/rest/v1/campaigns)

**Tip:** Replace 'apitest.ideascale.com' with your specific Workspace URL

***Note:** The API will not accept certain types of content submitted as ideas, comments, titles or tags. For example, if the following types of content are POSTed to the API, the API will return an 'INVALID\_CONTENT' error:*  
 *a. html tags*  
 *b. Excessively long text (if the idea length limit is enforced by your moderator)*  
 *c. Curse words (if the moderator has enabled curse word filtering)*

*API token for each community within the Workspace will be different. Input correct API token to get the correct community data.*

   
For the detailed list of API endpoints refer to:[https://a.ideascaleapp.com/api-docs/index.html](https://a.ideascaleapp.com/api-docs/index.html)

---

### Example API Endpoints:

***Note:** These are example URL's, please replace the portion of the URL using 'ideascale.com' with your specific Workspace URL*

Action:  Create New Member  
Method URL: /members  
EG: [https://ideascale.com/a/rest/v1/members](https://ideascale.com/a/rest/v1/members)  
Method: POST

Action:  Create Campaign  
Method URL: /campaign  
EG: [https://ideascale.com/a/rest/v1/campaign](https://ideascale.com/a/rest/v1/campaign)  
Method: POST

Action: Create New Idea  
Method URL: /idea  
EG: [https://ideascale.com/a/rest/v1/idea](https://ideascale.com/a/rest/v1/idea)  
Method: POST

Action: Delete Ideas  
Method URL /idea/{ideaId}/delete  
EG: [https://ideascale.com/a/rest/v1/idea/3421/delete](https://ideascale.com/a/rest/v1/idea/3421/delete)  
Method: DELETE

Action: Delete all Ideas, Comments and Vote  
Method URL /community/delete/ideas  
EG: [https://ideascale.com/a/rest/v1/community/delete/ideas](https://ideascale.com/a/rest/v1/community/delete/ideas)  
Method: DELETE

Action: Delete all members and ideas including votes and comments from community  
Method URL /community/delete/ideasAndMembers  
EG: [https://ideascale.com/a/rest/v1/community/delete/ideasAndMembers](https://ideascale.com/a/rest/v1/community/delete/ideasAndMembers)  
Method: DELETE

Action:  Get all Campaigns  
Method URL: /campaigns  
EG: [https://ideascale.com/a/rest/v1/campaigns](https://ideascale.com/a/rest/v1/campaigns)  
Method: GET

Action:  Get Member Information  
Method URL: /members/{memberId}  
EG: [https://ideascale.com/a/rest/v1/members/29781](https://ideascale.com/a/rest/v1/members/29781)  
Method: GET

Action:  Get Member Information By Name  
Method URL: /members/name/{name}  
EG: [https://ideascale.com/a/rest/v1/members/name/John](https://ideascale.com/a/rest/v1/members/name/John)  
Method: GET

Action:  Get Member Information By Email  
Method URL: /members/email/{email}  
EG: [\[email protected\]](https://ideascale.com/a/rest/v1/members/email/john@ideascale.com)  
Method: GET

---

### Create New Members:

***Note:** These are examples, please replace the portion of the URL using 'ideascale.com' with your specific Workspace URL*

- Example URL: [https://ideascale.com/a/rest/v1/members](https://ideascale.com/a/rest/v1/members) (This will send verification email to members)
- Example URL: [https://ideascale.com/a/rest/v1/members/create/silent](https://ideascale.com/a/rest/v1/members/create/silent) (This will only create members and will not sent verification email)
- Method: POST
- POST data: Member JSON Structure
- Expected Response: JSON Member Info structure for new member

**Member JSON Structure**  
 *Used by: /members*

Field Name  Type       Required     Description   
name            String     Required     Name of Member   
email            String Required         Email address of member

 **Sample:**  
 {"name" : "John Doe", "email" : "[\[email protected\]](https://help.ideascale.com/cdn-cgi/l/email-protection#7c16131412521813193c1813111d1512521f1311)"}

---

### Vote on Idea:

***Note:** This is an example, please replace the portion of the URL using 'ideascale.com' with your specific Workspace URL*

- Example URL: [https://ideas.ideascale.com/a/rest/v1/ideas/20884/vote](https://ideas.ideascale.com/a/rest/v1/ideas/20884/vote)
- Method: POST
- POST data: Vote on Idea JSON structure
- Expected Response: JSON Idea Info structure for the updated idea

**Vote Up on Idea JSON Structure**  
*Used by: /ideas/{ideaId}/vote/up*

Field Name    Type          Required      Description   
MyVote           Number    Optional       1 for agree

 **Sample:**  
 { "myVote":1 }

---

### Email Members:

***Note:** This is an example, please replace the portion of the URL using 'ideascale.com' with your specific Workspace URL*

Used by: /email/group/{id}

- Example URL: [https://ideascale.com/a/rest/v1/email/group/75](https://ideascale.com/a/rest/v1/email/group/75)
- Method:  Post
- Endpoint:  /email/group/{id}
- App Scope Required:  Admin
- Response content type:  JSON

***Note:** Only Admin will be able to sent email to a group*

Query Parameter  
"Id": Group Id. Group can be "moderators", "admins" or a "group"

Request Body Parameters:   
"subject" : String (required)   
"body" : String (required)

Sample:

{  
"subject" : "Are you ready for the survey",  
"body" : "Hey, You will receive another email shortly"  
}

---

### Response Codes

Key                                                Message                                                 HTTP Code UNEXPECTED                              Unexpected Error                                             500   
INVALID\_HEADER                       Invalid HTTP Header for API Request             400 NO\_AUTHENTICATION  
\_HEADER                                     No Header containing authentication data    400 NO\_API\_TOKEN No API             Token provided                                                 400   
NO\_CAMPAIGN                           No Campaign provided                                    400  INVALID\_API\_TOKEN                 Invalid API Token                                              400   
INVALID\_OAUTH\_TOKEN           Invalid OAuth Token                                         400  
INVALID\_SSO\_TOKEN                Invalid SSO Token                                             400   
INVALID\_MEMBER\_TOKEN        Invalid Member Token                                      400 MULTIPASS\_SSO\_NOT  
\_ENABLED                                   Multipass SSO not enabled                              400 MULTIPASS\_KEYS\_NOT  
\_CONFIGURED                            Multipass Keys not configured                          400 SSO\_MEMBER\_NOT\_FOUND   
SSO                                               Member not found                                             404   
PERMISSION\_DENIED                 Permission Denied                                            403   
RESTRICTED\_TO\_ADMIN           Resource is restricted to ADMIN                      403 NO\_SECURE\_CHANNEL            Secure channel required                                   403   
NO\_SSO\_TOKEN                        No SSO token provided by SSO community    403 LICENSE\_NOT\_ALLOWED        Resource not accessible to current license       403 COMMUNITY\_NOT\_FOUND    Community not found                                           404   
MEMBER\_NOT\_FOUND           Member not found                                                404   
MEMBER\_NAME\_NOT  
\_FOUND                                    Member name not provided                                 404 PERSON\_NOT\_FOUND           Person not found 404   
CAMPAIGN\_NOT\_FOUND      Campaign not found 404   
IDEA\_NOT\_FOUND                 Idea not found 404   
STATUS\_NOT\_FOUND           custom status not found 404   
MISSING\_REMOTE                  Authentication missing expected Remote  
\_IDENTITY\_DATA                    identity Data                                                            400  INVALID\_CREDENTIALS        Authentication data contains invalid credentials 403 INVALID\_STATUS\_CHANGE  Invalid Status Change                                             400   
INVALID\_CONTENT                Invalid Content                                                        400   
COMMENT\_NOT\_FOUND     Comment not found                                                404   
OWNERSHIP\_DISABLED        Idea ownership is not enabled                              400 MULTIPLE\_OWNERSHIP  
\_DISABLED                              Mulitple ownership is not enabled                        400   
INVALID\_EMAIL                       Invalid Email                                                            400   
UNSUPPORTED\_FILE  
\_EXTENSION                          Unsupported file extension                                     400 FILE\_STORAGE\_LIMIT           You have exceeded the storage limit                     400   
FILE\_EXIST                             A file with the same name already exists               400 EMAIL\_ALREADY  
\_REGISTERED                        Email already registered                                          400   
INVALID\_EMAIL\_OR              Invalid email or already registered,   
\_ALREADY\_REGISTERED      try a different email.                                                 400   
IDENTITY\_NOT\_FOUND       Identity not found                                                     404   
PRIVATE\_COMMUNITY         Private community   
\_NOT\_ALLOWED                   is not allowed for research                                      403   
ACTOR\_IS\_LOCKED              Actor is locked                                                          403   
HTML\_TAGS\_NOT  
\_ALLOWED                             Html tags not allowed                                              400   
TEXT\_CONTAINS\_  
FORBIDDEN\_CHARACTERS Text Contains forbidden characters                        400   
ABUSIVE\_WORD\_FOUND    Abusive/Inflammatory/Curse words found             400 PERSON\_LOCKED                 Person is locked                                                       403   
REVIEWSCALE\_NOT\_  
FOUND                                   Reviewscale not found                                             404   
STAGE\_NOT\_FOUND           Stage not found                                                         404   
FUNNEL\_NOT\_FOUND        Funnel not found                                                       404   
BADGE\_NOT\_FOUND          Badge not found                                                       404   
CAMPAIGN\_CHANGE\_  
NOT\_ALLOWED                    Campaign change not allowed                                403 REQUIRED\_FIELD\_  
MISSING                                 Required data not found                                          400 INVALID\_ORDER\_BY\_KEY   Invalid order by key                                                  400   
CAMPAIGN\_GROUP\_  
NOT\_FOUND                        Campaign Group not found                                      400   
INVALID\_INPUT                    Invalid input value                                                     400   
ASSESSMENT\_NOT\_  
FOUND                                  Assessment Not Found                                            400   
GROUP\_NOT\_FOUND        Group not found                                                        400 

---

### Order Keys

date-up  
date-down  
id-up  
id-down  
name-up  
name-down  
point-up  
point-down   
 

---

### Known API Issues

- Error Info JSON is not being returned
- top ideas are sometimes not ordered correctly
- specifying version as “v1.0” returns 404

---

### Assumptions

This documentation treats the following as mandatory environmental considerations:  
Host:   
[https://ideascale.com/a/rest/v1/](https://ideascale.com/a/rest/v1/)

Your Workspace URL in place of 'ideascale.com'

Header:   
All API call should provide these header values.

Parameter name: api\_token  
Value: {Value provided by ideascale}

---

### Frequently Asked Questions

#### What format does the IdeaScale REST API use for data transfer?

The API is RESTful, based on the HTTPS protocol, and supports JSON format for data transfers.

#### How is a request authenticated?

Every request must include a valid API token in the HTTPS request header, using the header field name api\_token. The token is specific to a single community within the Workspace.

#### Who can access the IdeaScale API?

See Role Permissions above; the source material contains a documented conflict on this point that has not yet been resolved (TO BE VERIFIED).

#### Where can the full list of available API endpoints be found?

The complete, continuously updated list of endpoints is available in the API library (TO BE LINKED).

#### Can a member have more than one API token?

Yes. API access is granted on a per-member basis, and a member can generate and hold more than one API token.

---

**Related Articles**

- [Help Article for Community Settings - Integrations](https://help.ideascale.com/all-apps-overview?hsLang=en)
- [Help Article for Single Sign-On](https://help.ideascale.com/single-sign-on-sso-new-admin-panel?hsLang=en)

 

Last Updated: August 25, 2026

 

- [Product Updates](https://help.ideascale.com/product-updates?hsLang=en#main-content)

    - [2026](https://help.ideascale.com/product-updates?hsLang=en#2026)
    - [2025](https://help.ideascale.com/product-updates?hsLang=en#2025)
- [Workspace](https://help.ideascale.com/workspace?hsLang=en#main-content)

    - [Workspace Homepage](https://help.ideascale.com/workspace?hsLang=en#workspace-homepage)
- [Manage Workspace](https://help.ideascale.com/manage-workspace?hsLang=en#main-content)

    - [Workspace Configuration](https://help.ideascale.com/manage-workspace?hsLang=en#workspace-configuration)
    - [Email Settings](https://help.ideascale.com/manage-workspace?hsLang=en#email-settings)
    - [Security](https://help.ideascale.com/manage-workspace?hsLang=en#security)
    - [Data](https://help.ideascale.com/manage-workspace?hsLang=en#data)
- [Campaign Management](https://help.ideascale.com/campaign-management?hsLang=en#main-content)

    - [Campaigns](https://help.ideascale.com/campaign-management?hsLang=en#campaigns)
    - [Workflow](https://help.ideascale.com/campaign-management?hsLang=en#workflow)
    - [Team Roles](https://help.ideascale.com/campaign-management?hsLang=en#team-roles)
- [IdeaScale AI](https://help.ideascale.com/ideascale-ai?hsLang=en)
- [IdeaScale Whiteboard](https://help.ideascale.com/ideascale-whiteboard?hsLang=en#main-content)

    - [Facilitator Guides](https://help.ideascale.com/ideascale-whiteboard?hsLang=en#facilitator-guides)
- [Best Practices](https://help.ideascale.com/best-practices?hsLang=en#main-content)

    - [FAQs](https://help.ideascale.com/best-practices?hsLang=en#faqs)
- [New User Guides](https://help.ideascale.com/new-user-guides?hsLang=en#main-content)

    - [Starter Guide](https://help.ideascale.com/new-user-guides?hsLang=en#starter-guide)
    - [Registration, Password & Authentication, New Users](https://help.ideascale.com/new-user-guides?hsLang=en#registration-password-authentication-new-users)
    - [Participation](https://help.ideascale.com/new-user-guides?hsLang=en#participation)
    - [Notifications](https://help.ideascale.com/new-user-guides?hsLang=en#notifications)
- [Personal Settings](https://help.ideascale.com/personal-settings?hsLang=en#main-content)

    - [Email, Services & Devices](https://help.ideascale.com/personal-settings?hsLang=en#email-services-devices)
    - [Your Communities & Notifications](https://help.ideascale.com/personal-settings?hsLang=en#your-communities-notifications)
    - [Messages](https://help.ideascale.com/personal-settings?hsLang=en#messages)
- [Reporting](https://help.ideascale.com/reporting?hsLang=en)
- [Idea Portfolio](https://help.ideascale.com/idea-portfolio?hsLang=en)
- [Moderator Dashboard](https://help.ideascale.com/moderator-dashboard?hsLang=en)
- [Member Management](https://help.ideascale.com/member-management?hsLang=en#main-content)

    - [Administrators](https://help.ideascale.com/member-management?hsLang=en#administrators)
    - [Custom Admin](https://help.ideascale.com/member-management?hsLang=en#custom-admin)
    - [Members](https://help.ideascale.com/member-management?hsLang=en#members)
    - [Moderators](https://help.ideascale.com/member-management?hsLang=en#moderators)
    - [Groups](https://help.ideascale.com/member-management?hsLang=en#groups)
- [Community Overview](https://help.ideascale.com/community-overview?hsLang=en)
- [Community Settings - Community Configuration](https://help.ideascale.com/community-settings-community-configuration?hsLang=en#main-content)

    - [Community Info](https://help.ideascale.com/community-settings-community-configuration?hsLang=en#community-info)
    - [Profile Questions](https://help.ideascale.com/community-settings-community-configuration?hsLang=en#profile-questions)
    - [Tags](https://help.ideascale.com/community-settings-community-configuration?hsLang=en#tags)
    - [Labels](https://help.ideascale.com/community-settings-community-configuration?hsLang=en#labels)
    - [Strings](https://help.ideascale.com/community-settings-community-configuration?hsLang=en#strings)
    - [Landing Pages](https://help.ideascale.com/community-settings-community-configuration?hsLang=en#landing-pages)
    - [Custom Pages](https://help.ideascale.com/community-settings-community-configuration?hsLang=en#custom-pages)
    - [Footer](https://help.ideascale.com/community-settings-community-configuration?hsLang=en#footer)
    - [File Library](https://help.ideascale.com/community-settings-community-configuration?hsLang=en#file-library)
- [Community Settings - Email Settings](https://help.ideascale.com/community-settings-email-settings?hsLang=en#main-content)

    - [General](https://help.ideascale.com/community-settings-email-settings?hsLang=en#general)
    - [Notifications](https://help.ideascale.com/community-settings-email-settings?hsLang=en#notifications)
    - [Broadcast Emails](https://help.ideascale.com/community-settings-email-settings?hsLang=en#broadcast-emails)
    - [Idea Inactivity Emails](https://help.ideascale.com/community-settings-email-settings?hsLang=en#idea-inactivity-emails)
    - [Email Logs](https://help.ideascale.com/community-settings-email-settings?hsLang=en#email-logs)
- [Community Settings - Automation](https://help.ideascale.com/community-settings-automation?hsLang=en)
- [Community Settings - Community Access](https://help.ideascale.com/community-settings-community-access?hsLang=en)
- [Community Settings - Integrations](https://help.ideascale.com/community-settings-integrations?hsLang=en#main-content)

    - [App Directory](https://help.ideascale.com/community-settings-integrations?hsLang=en#app-directory)
    - [Developer API](https://help.ideascale.com/community-settings-integrations?hsLang=en#developer-api)
- [Community Settings - Data](https://help.ideascale.com/community-settings-data?hsLang=en#main-content)

    - [Export Data](https://help.ideascale.com/community-settings-data?hsLang=en#export-data)
    - [Import Data](https://help.ideascale.com/community-settings-data?hsLang=en#import-data)
    - [Erase Community Data](https://help.ideascale.com/community-settings-data?hsLang=en#erase-community-data)
- [Government](https://help.ideascale.com/government?hsLang=en)
- [Policies & Notices](https://help.ideascale.com/policies-notices?hsLang=en)
- [Community Settings - Logs](https://help.ideascale.com/community-settings-logs?hsLang=en)

[![Chill listening crop-3](https://help.ideascale.com/hs-fs/hubfs/Icon_V2-1.png?width=24&height=24&name=Icon_V2-1.png "Chill listening crop-3")](http://ideascale.com)

IdeaScale's Help Center

Copyright © 2026, IdeaScale