Overview of Plecto API Endpoints

List of Plecto API Endpoints

Plecto allows you to access the following endpoints using either V2 or V3 base URL:

Base URL: https://app.plecto.com/api/v2/

V2 Endpoints, grouped by theme:

  • /dashboards/

  • /datasources/

  • /registrations/

  • /members/

  • /teams/

    • /my-teams/
  • /slideshows/

    • /screens/

    • /screen-devices/

    • /devices/

  • /favorites/

  • /formulas/

Base URL: https://app.plecto.com/api/v3/

V3 Endpoints:

  • /achievement-types/

    • /achievement-type-icons/
  • /posts/

Dashboards

{
  "parent": null,
  "level": 0,
  "title": "API Dashboard",
  "organization": "organization_uuid",
  "theme_id": "dark_blue"
}
  • Endpoint: https://app.plecto.com/api/v2/dashboards/

  • Methods: GET, POST

  • Description: Retrieve or create dashboards in Plecto. GET returns details about existing dashboards, while POST creates a new dashboard.

  • Example POST request above

Data sources

{
  "title": "New API Data Source",
  "fields": [
    {
      "name": "Units Sold",
      "input": "DecimalInput",
      "default_value": ""
    },
    {
      "name": "Product Name",
      "input": "TextInput",
      "default_value": "Coffee"
    }
  ]
}
  • Endpoint: https://app.plecto.com/api/v2/datasources/

  • Methods: GET, POST

  • Description: Access or create data sources, which serve as the foundation for managing data within Plecto.

  • Example POST request above

Registrations

{

"data_source": "12a121212044412faf1b4801b0eb20e8",

"member": "e1c222ebbc1812be1cbb1c101ced4523",

"external_id": "0p23oi5",

"date": "2024-10-10T10:22:55",

"Product Name": "Green tea",

"Units Sold": 2

}

Members

{
   "updating_api_provider_id": "Postman_ID",
   "updating_api_provider": "Postman",
   "updating_api_provider_email": "jane.doe@example.com",
   "name": "Jane Doe",
   "is_active": true,
   "teams": 000000
}
  • Endpoint: https://app.plecto.com/api/v2/members/

  • Methods: GET, POST

  • Description: Manage member data in the organization. Members will be listed on the Employees page in Plecto, and if sending data, they will be displayed in the relevant data sources.

  • Usage information: Use GET to filter based on parameters like api_provider or api_id, and POST to add new members:

    • GET /api/v2/members/?api_provider=<your api_provider>&api_id=<your id>
  • Example POST request above

Teams

{
    'name': 'api-team',
    'organization': org_id,
    'data_sources': [id1, id2],
    'members': [member1_id, member2_id, member3_id],
    'managers': [member1_id, member2_id],
}
  • Endpoint: https://app.plecto.com/api/v2/teams/

  • Methods: GET, POST

  • Description: Create or list teams within Plecto. Teams are used to group members and associate them with dashboards, data sources and other features.

  • Example POST request above

My teams

  • Endpoint: https://app.plecto.com/api/v2/my-teams/

  • Methods: GET

  • Description: List the teams that the authenticated user is a member or manager of. Global Admins will still see all teams; all other users will only see their associated teams.

teams vs. my-teams - What's the difference?

The difference between the /teams/ and /my-teams/ endpoints lies in the scope and details of the data they provide:

Scope of data:

  • /teams/ retrieves all teams within the organization. It provides information about each team, including their id, uuid, members, managers, organization, and associated data sources.

  • /my-teams/ returns only the teams that are directly associated with the authenticated user. These are typically the teams that the user is a member or manager of.

Response details:

  • /teams/ provides a more comprehensive set of data for each team, such as id, organization, data_sources, home_dashboard, and home_screens. It uses numeric IDs for members and managers.

  • /my-teams/ offers a simplified view of each team, omitting some fields like organization, home_dashboard, and data_sources. The response includes a picture field and uses UUIDs for members and managers instead of numeric IDs.

Use case differences:

  • Use /teams/ when you need a full list of all teams in the organization or require detailed information about the teams.

  • Use /my-teams/ to quickly fetch teams that the authenticated user is associated with, making it useful for personalized dashboards or user-specific functionality.

Slideshows

{
    "name": "My New Slideshow",
    "dashboards": [],
    "rotation": "",
    "slides": [
    {
    "url": "https://www.youtube.com/watch?v=-UPdU4npGm0",
    "dashboard": null,
    "contest_dashboard": null,
    "duration": null,
    "time_from": "00:00:00",
    "time_to": "23:59:59",
    "dynamic_context": null,
    "ordering": 0
    }
    ,
    {
    "url": null,
    "dashboard": 179312,
    "contest_dashboard": null,
    "duration": null,
    "time_from": "00:10:00",
    "time_to": "18:59:59",
    "dynamic_context": null,
    "ordering": 0
    }
    ],
    "slide_duration": 60
}
  • Endpoint: https://app.plecto.com/api/v2/slideshows/

  • Methods: GET, POST

  • Description: Use this to manage your Plecto slideshows. You can create slideshows with various dashboard, contest, YouTube, and URL slides.

  • Example POST request above

Screens

  • Endpoint: https://app.plecto.com/api/v2/screens/

  • Methods: GET

  • Description: Get a list of slideshows. The details include the slideshow UUID, name, rotation, and organization UUID.

Screen devices

  • Endpoint: https://app.plecto.com/api/v2/screen-devices/

  • Methods: GET

  • Description: This endpoint returns a list of screens (TVs or computer screens) where your slideshows have been sent.

Devices

{
   "device_name": "New Device",
   "device_type": "tv",
   "device_id": "tv_id",
   "username": "user@example.com",
   "password": "userpassword"
}
  • Endpoint: https://app.plecto.com/api/v2/devices/

  • Methods: GET, POST

  • Description: Retrieve or create devices linked to the API user, such as an activated TV or mobile app where the user is logged in.

  • Example POST request above

The username and password are needed to create a token that you will receive in the request response.

Favorites

{
    "dashboard": 180529,
    "order": 0
}
  • Endpoint: https://app.plecto.com/api/v2/favorites/

  • Methods: GET, POST

  • Description: Retrieve dashboards marked as favorite or add new favorites. Favorite dashboards appear as shortcuts on the Home page in Plecto UI.

  • Example POST request above

Formulas

{
   "title": "Total Number of Adversus Appointments",
   "format": "(Count(Adversus Appointments))",
   "prefix": "",
   "suffix": "",
   "output": "DecimalOutput",
   "decimals": 0,
   "lower_value_is_better": false,
   "conditional_colors": [
        {"value": "20", "color": "red"},
        {"value": "70", "color": "yellow"},
        {"value": "100", "color": "green"}
   ],
   "owner": null
}
  • Endpoint: https://app.plecto.com/api/v2/formulas/

  • Methods: GET, POST

  • Description: Retrieve or create formulas. All formulas are universal and can be used across all Plecto features.

  • Example POST request above

Achievements

{
   "name": "API Achievement",
   "category": "membership",
   "description": "This is an achievement description sent via API",
   "icon": "diamond",
   "custom_icon": null,
   "icon_id": "diamond",
   "shape": "hexagon",
   "color": "silver",
   "time_period": "",
   "show_next_to_name": true
}
  • Endpoint: https://app.plecto.com/api/v3/achievement-types/

  • Methods: GET, POST

  • Description: Retrieve or create new achievements in Plecto. Choose between award, record, membership achievements. Read more about how achievements work here.

  • Example POST Request above

Achievement type icons

  • Endpoint: https://app.plecto.com/api/v3/achievement-type-icons/

  • Methods: GET

  • Description: Retrieve the icons of your achievement badges. You'll get the image links in the response body.

News feed posts

{
    "content": "Today is Tuesday, which means it's cake day!",
    "organization_scope": true
}
  • Endpoint: https://app.plecto.com/api/v3/posts/

  • Methods: GET

  • Description: Read posts and send updates to your Plecto News Feed.

  • Example POST request above

Themes

{
   "name": "My New Theme",
   "text_color": "#5d5d5d",
   "background_color": "#f9f9f9",
   "background_image": null,
   "background_image_thumbnail": null,
   "background_position": "cover",
   "widget_green_color": "",
   "widget_green_background_color": null,
   "widget_green_background_text_color": null,
   "widget_yellow_color": "",
   "widget_yellow_background_color": null,
   "widget_yellow_background_text_color": null,
   "widget_red_color": "",
   "widget_red_background_color": null,
   "widget_red_background_text_color": null,
   "widget_background_color": "#f9f9f9",
   "widget_border_color": "#f1f1f1",
   "widget_border_radius": "15px",
   "widget_chart_color": "",
   "widget_chart_colors": null,
   "widget_chart_gradients": true,
   "widget_table_achievement_color": "",
   "is_custom": true
}
  • Endpoint: https://app.plecto.com/api/v2/themes/

  • Methods: GET, POST

  • Description: Retrieve or create new themes that you can use on Plecto dashboards and contests.

  • Example POST Request above