defaultheader

GET campaign

Get data of one campaign object.

Parameters

Parameters Detail
with
optional
Returns sub-object or count of sub-objects relating to the campaign. If sub-object is requested, response will return the first 20 records
Accepted value: "idea_count", "comment_count", "vote_count", "member_count"
format
optional
Specifies returned data format
Accepted value: "json", "xml"

Resource Information

Authentication: See Access Permission for GET campaign

HTTP Methods: GET

Request URL Format: https://{api_domain}/api3/campaign

Access Permission

Access to data varies base on system settings and requester roles. See Oauth 2.0 for details on authentication.

Private WebStorms: Requester must authenticate to get data.

Public WebStorms: No authentication required to get data.

Requster Role: Some response attributes are accessible base on the requester's role.

campaign_options: Specify the campaign options enabled in the webstorm

"Public Site": The campaign is public

"Disable Vote": Voting is disabled for the campaign

"Idea Tags": Idea Tags are enabled for the campaign

"Disable Comment": Comment is disabled for the campaign

"Disable Demote": Demote is disabled for the idea

Errors

  • Invalid object ID or you don't have access to this object

Example Request

  • Method: GET
  • Header: Authorization=Bearer 85f7b2462570acdde9a458ba6495b8763dcd040c
  • URL: https://example.brightidea.com/api3/campaign/E62DB922-55EE-419D-9CB9-4C4DD8243ADA?with=idea_count

    {
        "campaign": {
            "id": "F27B8A3F-C38B-460E-8F73-AA092A39FA2E",
            "name": "Great Campaign",
            "description": "Great Campaign Description",
            "date_created": "2013-05-16 12:45:24.380",
            "status": "Active",
            "campaign_options": [
                {
                    "option_id": "316",
                    "option_enabled": false,
                    "description": "Public Site"
                },
                {
                    "option_id": "331",
                    "option_enabled": false,
                    "description": "Disable Vote"
                },
                {
                    "option_id": "337",
                    "option_enabled": true,
                    "description": "Idea Tags"
                },
                {
                    "option_id": "344",
                    "option_enabled": false,
                    "description": "Disable Comment"
                },
                {
                    "option_id": "360",
                    "option_enabled": false,
                    "description": "Disable Demote"
                }
            ],
            "idea_count": 6
        }
    }
    




LIST campaign

Get data on a list of campaign objects. Objects are order by created date descending by default.

On retrieving large set of data, requester should use pagination parameters such as page and page_size to manage multiple requests.

Parameters

Parameters Detail
id
optional
Filter return by campaign ID
Sample value: "11111111-1111-1111-1111-111111111111"
name
optional
Filter return by campaign title
Sample value: "Great Campaign Title"
date_created
optional
Filter return by campaign created date. Response contains all campaigns created within the 24 hours of the specified date
Sample value: "12/06/2009"
status
optional
Filter return by campaign state. Parameter is for Admin only
Accepted Value: 1: For active, 2: For closed, 3: For archived
start_date
optional
Filter return by campaign start date.
Sample value: "12/06/2009"
end_date
optional
Filter return by campaign end date.
Sample value: "12/06/2009"
status
optional
Filter return by campaign state. Parameter is for Admin only
Accepted Value: "active", "closed", "archived"
page_size
optional
Specifies number of records returns per page. Default: 20. Minimum: 1. Maximum: 100
Sample value: 50
page
optional
Specifies which page of records to return. Default: 1. Minimum: 1. Maximum: {page_count}
Sample value: 5
order
optional
A SQL style string that specifies the order the records should return in.
Sample value: "date_created ASC, screen_name DESC".
Accepted attributes: "id", "name", "date_created", "status", "random"
with
optional
Returns sub-object or count of sub-objects relating to the campaign. If sub-object is requested, response will return the first 20 records
Accepted value: "idea_count", "image"
format
optional
Specifies returned data format
Accepted value: "json", "xml"

Resource Information

Authentication: See Access Permission

HTTP Methods: GET

Request URL Format: https://{api_domain}/api3/campaign

Access Permission

Access to data varies base on system settings and requester roles. See Oauth 2.0 for details on authentication.

Private WebStorms: Requester must authenticate to get data.

Public WebStorms: No authentication required to get data.

Requster Role: Some response attributes are accessible base on the requester's role.

Errors

  • Invalid object ID or you don't have access to this object

Example Request

  • Method: GET
  • Header: Authorization=Bearer 85f7b2462570acdde9a458ba6495b8763dcd040c
  • URL: https://example.brightidea.com/api3/campaign?page=2&page_size=5

        {
            "campaign_list": [
    
                {
                    "id": "1FCEB03C-A11B-49B7-BE2C-F7C576920782",
                    "name": "Sample Campaign",
                    "description": "Sample Campaign Description",
                    "date_created": "2012-09-14 17:04:57.383",
                    "status": "Active",
                     "start_date": "2012-03-21 20:07:57.627",
                     "end_date": "2013-03-21 20:07:57.627"
                },
                {
                    "id": "0642E3ED-AAC3-47B6-9E0B-902B6596AC53",
                    "name": "Chips Voting Campaign",
                    "description": "Chips Voting Campaign Description",
                    "date_created": "2012-02-07 17:51:50.600",
                    "status": "Archived",
                    "start_date": "2011-05-18 23:15:46.567",
                    "end_date": "2012-05-17 23:15:46.567"
                },
                {
                    "id": "F27B8A3F-C38B-460E-8F73-AA092A39FA2E",
                    "name": "Great Campaign",
                    "description": "Great Campaign Description",
                    "date_created": "2013-05-16 12:45:24.380",
                    "status": "Closed",
                    "start_date": "2012-02-23 17:07:50.473",
                    "end_date": "2013-02-22 17:07:50.473",
                     "start_date": "2011-08-01 16:28:53.687",
                    "end_date": "2012-07-31 16:28:53.687"
                },
                {
                    "id": "1F93FD4F-F06D-456A-AFE9-825CE9B591F2",
                    "name": "Private Campaign ",
                    "description": "This is a Private Campaign ",
                    "date_created": "2012-04-25 10:26:03.557",
                    "status": "Active",
                    "start_date": "2011-05-05 16:09:54.997",
                    "end_date": "2012-05-04 16:09:54.997"
                },
                {
                    "id": "0E3C90CC-2261-4F12-A7EF-EF32939842F6",
                    "name": "Public Campaign ",
                    "description": "This is a Public Campaign ",
                    "date_created": "2011-05-03 13:40:49.843",
                    "status": "Active",
                    "start_date": "2011-09-09 12:07:18.843",
                    "end_date": "2012-09-08 12:07:18.843"
                },
    
            ],
            "stats": {
                "total": 12,
                "page_count": 3,
                "current_page": 2
            }
        }
    




CREATE campaign

Create a campaign object.

Requester must be Admin of the Affiliate to create campaign.

Parameters

Parameters Detail
name
required
This is the name of the campaign.
Sample value: "Great Campaign Title"
description
optional
This is the description of the campaign. It's a long text field. Minimum 1 character.
Sample value: "Great Campaign Description"
template_campaign
optional
This is the ID of the template campaign.
Sample value: "11111111-1111-1111-1111-111111111111"
domain
optional
This is the domain of the campaign.
Sample value: "domain.company.com"
alias
optional
This is the campaign name alias.
Sample value: "democampaign"

Resource Information

Authentication: Required. See Oauth 2.0 for details on authentication.

HTTP Methods: POST

Request URL Format: https://{api_domain}/api3/campaign

Access Permission

Requester must be an Affiliate Admin to create campaign. See Oauth 2.0 for details on authentication.

Errors

  • A campaign with this name already exists
  • {parameter} must be more than {minimum_length} characters
  • {parameter} must be less than {maximum_length} characters
  • Invalid {parameter} received

Example Request

  • Method: POST
  • Header: Authorization=Bearer 85f7b2462570acdde9a458ba6495b8763dcd040c
  • URL: https://example.brightidea.com/api3/campaign
  • Form data:

    • name=Great Campaign
    • description=Great Campaign Description
    {
    
    campaign:{
                id: "F27B8A3F-C38B-460E-8F73-AA092A39FA2E"
                name: "Great Campaign"
                description: "Great Campaign Description"
                date_created: "2013-05-16 12:45:24.380"
            }
    }
    




UPDATE campaign

Update a campaign object.

Function updates only value of parameters passed through request. To empty out an attribute, pass parameter with blank value.

Parameters

Parameters Detail
name
optional
This is the name of the campaign.
Sample value: "Great Campaign Title"
description
optional
This is the description of the campaign. It's a long text field. Minimum 1 character.
Sample value: "Great Campaign Description"

Resource Information

Authentication: Required. See Oauth 2.0 for details on authentication.

HTTP Methods: PUT

Request URL Format: https://{api_domain}/api3/campaign/{id}

Access Permission

Authentication is required for UPDATE campaign request. See Oauth 2.0 for details on authentication.

Affiliate Admin can make update for all campaigns.

Errors

  • {parameter} must be more than {minimum_length} characters
  • {parameter} must be less than {maximum_length} characters
  • Invalid {parameter} received
  • campaign doesn't exist
  • Password doesn't satisfy requirement
  • Failed to update campaign

Example Request

  • Method: PUT
  • Header: Authorization=Bearer 85f7b2462570acdde9a458ba6495b8763dcd040c
  • URL: https://example.brightidea.com/api3/campaign/AF7C07AC-0D23-4673-918C-2AD13B7747D5
  • Form data:

    • name=Great Campaign
    • description=Great Campaign Description
    {
        campaign: {
                    id: "4E4D9246-E3BD-4C99-9CD9-233A1B766E07"
                    name: "Great Campaign"
                    description: "Great Campaign Description"
                    date_created: "2013-04-25 15:44:44.687"
                    }
    }
    




DELETE campaign

Delete a campaign object. Requester must be an Admin.

Parameters

Parameters Detail
format
optional
Specifies returned data format
Accepted value: "json", "xml"

Resource Information

  • Authentication: Required
  • HTTP Methods: DELETE
  • Request URL Format: https://{api_domain}/api3/campaign/{id}

Access Permission

Requester must be an Admin.

Errors

  • Invalid GUID received

Example Request

  • Method: DELETE
  • Header: Authorization=Bearer 85f7b2462570acdde9a458ba6495b8763dcd040c
  • URL: https://example.brightidea.com/api3/campaign/8B3E8DFF-83B3-403D-BB69-28223F418676

    {
        "message": "success",
        "code": 200
    }
    




FAQ

Question: LIST campaign only return 100 objects maximum per request. How do I retrieve more results.

Answer: LIST campaign response is automatically paginated. If you got 100 idea objects in the initial request, pass "page_size=100&page=2" to get the next 100. page_count is returned with every LIST request so your application can figure out when it hits the last page.