Need help with your APIs? I offer API discovery, governance & evangelism services. Explore services →
API Evangelist API Evangelist
Discovery
Learnings
Guidance
Toolbox
Alignment
API Evangelist LLC

WeFitter challenge API

WeFitter API’s challenge engine will bring endless engagement to your platform.For more information about the possibilities in challenges please go to https://www.wefitter.com/en-us/features/gamification/Challenges have multilanguage support on the fields: `Title`, `Slogan`, and `Description`.By default, challenges get the default-language that is configured in the app. Whenever a challenge is requested through the API this challenge will be presented in the default language.If another language is preferred, this can be requested by adding the header parameter `Accept-Language` stating the language short code (ex. `en` for english). If this language short code is not present in the title of the challenge, the default language will be returned.These translation fields contain JSON strings, for example:```{"en":"this is the English title","nl":"this is the Dutch title"}```So to create a multilanguage challenge, please provide the title, slogan, and description field as json strings, be aware that because of serialization this should be formed with backward slashes: {"title": "{\"en\":\"this is the English title\", \"nl\":\"this is the dutch title\"}","slogan": "{\"en\":\"this is the English title\", \"nl\":\"this is the dutch slogan\"}","description": "{\"en\":\"this is the English title\", \"nl\":\"this is the dutch description\"}",}

WeFitter challenge API is one of 9 APIs that WeFitter publishes on the APIs.io network, described by a machine-readable OpenAPI specification.

Tagged areas include challenge. The published artifact set on APIs.io includes an OpenAPI specification and an API reference.

This API exposes 22 operations across 12 paths, and defines 11 schemas. It is described by OpenAPI 2.0, at version v1.3.

Requests are made against the base URL https://api.wefitter.com/api/v1.3.

22 operations 12 paths 11 schemas 2 DELETE8 GET1 PATCH6 POST5 PUT

Metadata

The identity and technical contract details declared by the specification.

Specification
OpenAPI 2.0
API Version
v1.3
Base URL
https://api.wefitter.com/api/v1.3
Authentication
basic, API Key, API Key
License
BSD License
Terms of Service
Resource Areas
1

Authentication & Security 3

WeFitter challenge API declares 3 security schemes for authenticating requests. It defines a basic scheme (Basic). An API key is passed in the header as Authorization (BearerProfile). An API key is passed in the header as Authorization (BearerAdmin). By default, every request must be authenticated.

  • Basic — Basic Authentication is used to create administrator bearer tokens. Once a bearer token has been made, remove this auth. ('logout' in Swagger')
  • BearerProfile — Bearer authentication for logged-in profiles. When using the GUI, please don't forget to prefix your bearer tokens with the text 'bearer', followed by a space.
  • BearerAdmin — Bearer authentication for administrators. When using the GUI, please don't forget to prefix your bearer tokens with the text 'bearer', followed by a space.

Paths & Operations 22

Across 12 paths, the API surfaces 22 operations — 2 DELETE, 8 GET, 1 PATCH, 6 POST, 5 PUT. Each is listed below with its method, path, parameters, and response codes.

challenge 22

WeFitter API’s challenge engine will bring endless engagement to your platform. For more information about the possibilities in challenges please go to https://www.wefitter.com/en…

GET
/challenge/
List Challenges
challenge_list 3 params → 200
POST
/challenge/
Create challenge
challenge_create 1 param → 201
GET
/challenge/{challenge_public_id}/team/
Team leaderboard
challenge_team_list 4 params → 200
GET
/challenge/{challenge_public_id}/team/{team_public_id}/
Team contribution
challenge_team_read 3 params → 200
GET
/challenge/{public_id}/
Get Challenge
challenge_read 1 param → 200
PUT
/challenge/{public_id}/
Edit challenge
challenge_update 2 params → 200
PATCH
/challenge/{public_id}/
Partial edit challenge
challenge_partial_update 2 params → 200
DELETE
/challenge/{public_id}/
Delete challenge
challenge_delete 1 param → 204
POST
/challenge/{public_id}/deactivate_member/
Deactivate member
challenge_deactivate_member_create 5 params → 201
PUT
/challenge/{public_id}/deactivate_member/
This docstring is used by Django Rest Framework
challenge_deactivate_member_update 2 params → 200
POST
/challenge/{public_id}/deactivate_members/
Deactivate members
challenge_deactivate_members_create 5 params → 201
PUT
/challenge/{public_id}/deactivate_members/
This docstring is used by Django Rest Framework
challenge_deactivate_members_update 2 params → 200
GET
/challenge/{public_id}/leaderboard/
Leaderboard
challenge_leaderboard 2 params → 200
GET
/challenge/{public_id}/leaderboard_history/
Leaderboard history
challenge_leaderboard_history 1 param → 200
POST
/challenge/{public_id}/member/
Add member
challenge_member_create 2 params → 201
PUT
/challenge/{public_id}/member/
Add member
challenge_member_update 2 params → 200
DELETE
/challenge/{public_id}/member/
Remove member
challenge_member_delete 2 params → 204
GET
/challenge/{public_id}/members/
Get members
challenge_members_read 1 param → 200
POST
/challenge/{public_id}/members/
Add members
challenge_members_create 2 params → 201
PUT
/challenge/{public_id}/members/
Add members
challenge_members_update 2 params → 200
GET
/challenge/{public_id}/periods/
Periods
challenge_periods 1 param → 200
POST
/challenge/{public_id}/remove_members/
Remove members
challenge_remove_members 2 params → 201

Schemas 11

The contract defines 11 schemas that model the data the API accepts and returns. The most detailed are ChallengeDetail (29 properties), ChallengeList (20 properties), LeaderboardProfile (9 properties), LeaderboardTeam (7 properties). Each schema is shown below with its type and property counts.

ChallengePeriod
object
2 properties
LeaderboardHistory
object
3 properties
ProfilePublicIdsListAndTeamAsPublicId
object
4 properties 1 required
LeaderboardProfile
object
9 properties 1 required
LeaderboardProfileAndTeam
object
6 properties 1 required
LeaderboardTeam
object
7 properties 2 required
TeamProfile
object
Team of which this profile is a member of
4 properties 1 required
ChallengeDetail
object
29 properties 9 required
ChallengeActivityType
object
1 property 1 required
ChallengeList
object
20 properties 7 required
ProfileAsProfilePublicIdAndTeamAsTeamPublicId
object
4 properties 1 required

Specification

The full machine-readable OpenAPI contract behind this narrative.

Source

wefitter-challenge-api-openapi.yml Raw ↑

Other APIs WeFitter publishes across the network.

WeFitter app API
WeFitter connection API
WeFitter insights API
WeFitter loyalty API
WeFitter notification API
WeFitter profile API
WeFitter team API
WeFitter token API