### Query Documentation Dynamically Source: https://docs.zealy.io/api-reference/modules Perform an HTTP GET request to query this documentation page dynamically. Use the 'ask' query parameter with a specific question to get direct answers and relevant excerpts. ```http GET https://docs.zealy.io/api-reference/modules.md?ask= ``` -------------------------------- ### Query Zealy Documentation Dynamically Source: https://docs.zealy.io/llms.txt To get specific information not readily available, you can query the documentation. This involves making an HTTP GET request to a documentation URL with an 'ask' query parameter containing your question. ```http GET https://docs.zealy.io/introduction.md?ask= ``` -------------------------------- ### Query Documentation Source: https://docs.zealy.io/api-reference/users/add-and-remove-xp To get answers to questions not explicitly covered on this page, perform an HTTP GET request to the page URL with the 'ask' query parameter. The response will include a direct answer and relevant documentation excerpts. ```http GET https://docs.zealy.io/api-reference/users/add-and-remove-xp.md?ask= ``` -------------------------------- ### Query Documentation Source: https://docs.zealy.io/api-reference/leaderboards To ask questions about the documentation, perform an HTTP GET request to the page URL with the 'ask' query parameter. The question should be specific and in natural language. ```HTTP GET https://docs.zealy.io/api-reference/leaderboards.md?ask= ``` -------------------------------- ### Query Documentation with 'ask' Parameter Source: https://docs.zealy.io/api-reference/communities/community-secret-creation Demonstrates how to query the documentation dynamically using the 'ask' query parameter in an HTTP GET request. This is useful for retrieving specific information or clarification not explicitly stated on the page. ```http GET https://docs.zealy.io/api-reference/communities/community-secret-creation.md?ask= ``` -------------------------------- ### Query Documentation Source: https://docs.zealy.io/api-reference/users/referral-code To ask questions about this documentation, perform an HTTP GET request to the page URL with the 'ask' query parameter. The response will provide a direct answer and relevant sources. ```http GET https://docs.zealy.io/api-reference/users/referral-code.md?ask= ``` -------------------------------- ### Get user reviews Source: https://docs.zealy.io/api-reference/users/user-lookup Retrieves review information for a specific user. ```APIDOC ## GET /public/communities/{subdomain}/reviews/users/{id} ### Description Retrieves review information for a specific user. ### Method GET ### Endpoint /public/communities/{subdomain}/reviews/users/{id} ### Parameters #### Path Parameters - **subdomain** (string) - Required - The subdomain of the community. - **id** (string) - Required - The ID of the user for whom to retrieve reviews. ``` -------------------------------- ### Query Documentation Page Source: https://docs.zealy.io/api-reference/communities/community-secret-retrieval To ask questions about this documentation page, perform an HTTP GET request with the 'ask' query parameter. The question should be specific and in natural language. ```http GET https://docs.zealy.io/api-reference/communities/community-secret-retrieval.md?ask= ``` -------------------------------- ### Get Review Events Source: https://docs.zealy.io/api-reference/reviews/review-events Retrieve a list of review events for a specific claimed quest by making a GET request to the API endpoint. Ensure you replace `{subdomain}` and `{id}` with the appropriate values. ```http GET https://api-v2.zealy.io/public/communities/{subdomain}/reviews/{id}/events ``` -------------------------------- ### Query Documentation API Source: https://docs.zealy.io/api-reference/users/ban-user You can query this documentation dynamically by making an HTTP GET request to the page URL with the `ask` query parameter. This is useful for retrieving specific information or clarifications not explicitly stated on the page. ```bash GET https://docs.zealy.io/api-reference/users/ban-user.md?ask= ``` -------------------------------- ### Query Zealy API Documentation Source: https://docs.zealy.io/api-reference/reviews To ask a question about the documentation, perform an HTTP GET request on the current page URL with the 'ask' query parameter. The question should be specific and in natural language. ```http GET https://docs.zealy.io/api-reference/reviews.md?ask= ``` -------------------------------- ### Query Documentation with 'ask' Parameter Source: https://docs.zealy.io/api-reference/communities To get specific information not directly visible on a page, append the 'ask' query parameter to the page URL with your question. This allows for dynamic querying of the documentation content. ```HTTP GET https://docs.zealy.io/api-reference/communities.md?ask= ``` -------------------------------- ### Get Community Information by Subdomain Source: https://docs.zealy.io/api-reference/communities/community-lookup Fetches basic information about a community using its subdomain. This endpoint is publicly accessible. ```APIDOC ## GET /public/communities/{subdomain} ### Description Retrieves basic information about the specified community. This endpoint is accessible for all communities, regardless of user roles. ### Method GET ### Endpoint /public/communities/{subdomain} ### Parameters #### Path Parameters - **subdomain** (string) - Required - The subdomain of the community to look up. ``` -------------------------------- ### Get Review Events Source: https://docs.zealy.io/api-reference/reviews/review-events Fetches a list of review events for a specific claimed quest. ```APIDOC ## GET /public/communities/{subdomain}/reviews/{id}/events ### Description Returns the list of review events that happened on a claimed quest. ### Method GET ### Endpoint /public/communities/{subdomain}/reviews/{id}/events ### Parameters #### Path Parameters - **subdomain** (string) - Required - The subdomain of the community. - **id** (string) - Required - The ID of the review. ### Response #### Success Response (200) - **id** (string) - ID of the review event. - **createdAt** (string) - ISO timestamp that indicates the creation date and time of the review event. - **type** (Enum (error, success, cancel)) - Type of the review event. - **data** (Object) - Object containing the comment written by the reviewer at the moment of the review and the bonus XP given, if any. - **reviewer** (Object) - Object containing the `id`, `name`, and `avatar` url of the reviewer. ``` -------------------------------- ### Get user invites Source: https://docs.zealy.io/api-reference/users/user-lookup Retrieves a list of invites associated with a specific user, including their statuses (Active, Pending, Consumed). ```APIDOC ## GET /public/communities/{subdomain}/users/{userId}/invites ### Description Retrieves a list of invites associated with a specific user, including their statuses (Active, Pending, Consumed). ### Method GET ### Endpoint /public/communities/{subdomain}/users/{userId}/invites ### Parameters #### Path Parameters - **subdomain** (string) - Required - The subdomain of the community. - **userId** (string) - Required - The Zealy ID of the user whose invites are to be retrieved. ``` -------------------------------- ### Get User Referral Code Source: https://docs.zealy.io/api-reference/users/referral-code Retrieves the referral code for a specific user within a community. ```APIDOC ## GET /public/communities/{subdomain}/users/{userId}/referral-code ### Description Retrieves the referral code for a specific user within a community. This code is used by the user to invite others. ### Method GET ### Endpoint /public/communities/{subdomain}/users/{userId}/referral-code ### Parameters #### Path Parameters - **subdomain** (string) - Required - The subdomain of the community. - **userId** (string) - Required - The ID of the user. ### Response #### Success Response (200) - **referralCode** (string) - The user's referral code. ``` -------------------------------- ### Retrieve User Referral Code Source: https://docs.zealy.io/api-reference/users/referral-code Use this endpoint to get a specific user's referral code. This code is how users invite others to your community. ```http GET https://api-v2.zealy.io/public/communities/{subdomain}/users/{userId}/referral-code ``` -------------------------------- ### Retrieve a Sprint Leaderboard Source: https://docs.zealy.io/api-reference/leaderboards/retrieve-a-leaderboard To get a specific sprint's leaderboard, include the 'sprintId' query parameter along with 'page' and 'limit'. ```http GET https://api-v2.zealy.io/public/communities/{subdomain}/leaderboard?page=&limit=&sprintId= ``` -------------------------------- ### Get a specific claimed quest Source: https://docs.zealy.io/api-reference/reviews/claimed-quests-lookup Retrieves details for a specific claimed quest by its ID. ```APIDOC ## GET /public/communities/{subdomain}/reviews/{id} ### Description Retrieves details for a specific claimed quest. ### Method GET ### Endpoint /public/communities/{subdomain}/reviews/{id} ### Parameters #### Path Parameters - **subdomain** (string) - Required - The subdomain of the community. - **id** (string) - Required - The ID of the claimed quest. ### Response #### Success Response (200) - **id** (string) - ID of the claimed quest. - **user** (object) - Object containing the `id`, `name`, and `avatar` url of the user. - **quest** (object) - Object containing `id` and `name` of the quest. - **status** (enum) - Status of the review (success, fail, pending). - **mark** (enum) - Indicates if the review has been marked as a star or flagged (star, flag), can be null. - **tasks** (array of object) - Contains the list of tasks the user completed, with submissions. - **updatedAt** (string) - ISO timestamp of the last update. - **createdAt** (string) - ISO timestamp of when the quest was claimed. ``` -------------------------------- ### Retrieve Webhook Event Types Source: https://docs.zealy.io/api-reference/webhooks Use this endpoint to get a list of all available event types that can be subscribed to via webhooks. This helps in configuring which events your webhook should listen for. ```http GET https://api-v2.zealy.io/swagger.json ``` -------------------------------- ### Retrieve Community Secret Source: https://docs.zealy.io/api-reference/communities/community-secret-retrieval Use this GET request to retrieve the community secret. You must be an admin of the community to access this endpoint. ```http GET https://api-v2.zealy.io/public/communities/{subdomain}/secrets ``` -------------------------------- ### Community Lookup API Endpoint Source: https://docs.zealy.io/api-reference/communities/community-lookup This is the GET endpoint for retrieving public community information based on its subdomain. It is accessible without authentication. ```http GET https://docs.zealy.io/api-reference/communities/community-lookup.md?ask= ``` -------------------------------- ### List Quests API Endpoint Source: https://docs.zealy.io/api-reference/quests/list-quests This is the OpenAPI specification for the GET /public/communities/{subdomain}/quests endpoint, used to retrieve all quests for a community. Admin role is required. ```json { "summary": "List quests", "operationId": "listCommunityQuests", "parameters": [ { "name": "subdomain", "in": "path", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "A list of quests.", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/Quest" } } } } } } } ``` -------------------------------- ### Authenticate Zealy API Request with Axios Source: https://docs.zealy.io/authentication Use this snippet to make authenticated GET requests to the Zealy API. Ensure you replace the placeholder subdomain and user ID with your actual values. The API key should be kept secure and only used in server-side code. ```javascript await axios.get( "https://api-v2.zealy.io/api/communities/join/users/d353db69-137f-41df-b5f3-7b1d1e3d52bb", { headers: { "x-api-key": "c9b27evEJqYf1lvvU7ADFHHwiso" } } ) ``` -------------------------------- ### Get Community Secret Source: https://docs.zealy.io/api-reference/communities/community-secret-retrieval Retrieves the secret associated with a specific community. This is typically used for API integrations and requires the caller to be an administrator of the community. ```APIDOC ## GET /public/communities/{subdomain}/secrets ### Description Retrieves the secret for a given community. This secret is used for API tasks and requires administrator privileges for the community. ### Method GET ### Endpoint /public/communities/{subdomain}/secrets ### Parameters #### Path Parameters - **subdomain** (string) - Required - The subdomain of the community for which to retrieve the secret. ### Response #### Success Response (200) - **secret** (string) - The community secret. #### Response Example { "secret": "your_community_secret_here" } ``` -------------------------------- ### Create Webhook Source: https://docs.zealy.io/api-reference/webhooks Creates a new webhook for a specific community. ```APIDOC ## POST /public/communities/{subdomain}/webhooks ### Description Creates a new webhook for a specific community. ### Method POST ### Endpoint /public/communities/{subdomain}/webhooks ### Parameters #### Path Parameters - **subdomain** (string) - Required - The subdomain of the community. #### Request Body - **url** (string) - Required - The URL where the webhook events will be sent. - **events** (array) - Required - A list of event types to subscribe to. - **description** (string) - Optional - A description for the webhook. ``` -------------------------------- ### Query Documentation Dynamically Source: https://docs.zealy.io/api-reference/webhooks When specific information is not directly available on the page, you can query the documentation dynamically. This mechanism allows for natural language questions to retrieve direct answers and relevant excerpts. ```http GET https://docs.zealy.io/api-reference/webhooks.md?ask= ``` -------------------------------- ### Create Quest Source: https://docs.zealy.io/llms.txt Allows for the creation of a new quest within the Zealy platform. ```APIDOC ## POST /api/v1/quests ### Description Creates a new quest. ### Method POST ### Endpoint /api/v1/quests ### Request Body - **name** (string) - Required - The name of the quest. - **description** (string) - Optional - A description of the quest. - **communityId** (string) - Required - The ID of the community the quest belongs to. - **questType** (string) - Required - The type of the quest (e.g., 'link', 'discord', 'twitter'). - **questData** (object) - Required - Data specific to the quest type (e.g., URL for link quests, Discord channel ID for Discord quests). - **xpAmount** (integer) - Required - The amount of XP awarded for completing the quest. - **isActive** (boolean) - Optional - Whether the quest is currently active. ### Response #### Success Response (201) - **id** (string) - The ID of the newly created quest. - **name** (string) - The name of the quest. - **communityId** (string) - The ID of the community. - **xpAmount** (integer) - The XP awarded. #### Response Example { "id": "quest_123abc", "name": "Join our Discord", "communityId": "community_xyz789", "xpAmount": 100 } ``` -------------------------------- ### Create Quest Source: https://docs.zealy.io/api-reference/quests Endpoint to create a new quest. Refer to the linked documentation for detailed information. ```APIDOC ## Create Quest ### Description Endpoint to create a new quest. ### Method POST ### Endpoint /quests ### Request Body Refer to the linked documentation for request body details. ``` -------------------------------- ### List Modules Source: https://docs.zealy.io/api-reference/modules Retrieves a list of modules associated with a specific community subdomain. This endpoint allows you to fetch all available modules for a given community. ```APIDOC ## GET /public/communities/{subdomain}/modules ### Description Retrieves a list of modules for a given community subdomain. ### Method GET ### Endpoint /public/communities/{subdomain}/modules ### Parameters #### Path Parameters - **subdomain** (string) - Required - The subdomain of the community for which to retrieve modules. ``` -------------------------------- ### Fetch a user by third-party IDs or handles Source: https://docs.zealy.io/api-reference/users/user-lookup Retrieves a user's information by using the IDs or handles of their linked third-party accounts (e.g., Discord, Twitter, wallet, email). ```APIDOC ## GET /public/communities/{subdomain}/users ### Description Retrieves a user's information by using the IDs or handles of their linked third-party accounts (e.g., Discord, Twitter, wallet, email). ### Method GET ### Endpoint /public/communities/{subdomain}/users ### Parameters #### Path Parameters - **subdomain** (string) - Required - The subdomain of the community. #### Query Parameters - **discordId** (string) - Optional - The Discord ID of the user. - **discordHandle** (string) - Optional - The Discord handle of the user. - **twitterId** (string) - Optional - The Twitter ID of the user. - **twitterHandle** (string) - Optional - The Twitter handle of the user. - **email** (string) - Optional - The email address of the user. - **walletAddress** (string) - Optional - The connected wallet address of the user. ``` -------------------------------- ### Add & Remove XP Source: https://docs.zealy.io/api-reference/users Allows for adding or removing experience points (XP) for a user. ```APIDOC ## POST /users/:userId/xp ### Description Adds or removes experience points (XP) for a specified user. ### Method POST ### Endpoint /users/:userId/xp ### Parameters #### Path Parameters - **userId** (string) - Required - The unique identifier of the user whose XP will be modified. #### Request Body - **amount** (integer) - Required - The amount of XP to add (positive number) or remove (negative number). - **reason** (string) - Optional - A reason for the XP adjustment. ``` -------------------------------- ### List Webhooks Source: https://docs.zealy.io/api-reference/webhooks Retrieves a list of all webhooks configured for a specific community. ```APIDOC ## GET /public/communities/{subdomain}/webhooks ### Description Retrieves a list of all webhooks configured for a specific community. ### Method GET ### Endpoint /public/communities/{subdomain}/webhooks ### Parameters #### Path Parameters - **subdomain** (string) - Required - The subdomain of the community. ``` -------------------------------- ### Create Quest Endpoint Source: https://docs.zealy.io/api-reference/quests/create-quest Use this endpoint to create a new quest via a POST request. Refer to the Swagger JSON for detailed request body and response schemas. ```HTTP POST https://docs.zealy.io/api-reference/quests/create-quest.md/public/communities/{subdomain}/quests ``` -------------------------------- ### List Quests Source: https://docs.zealy.io/api-reference/quests Endpoint to list quests. Refer to the linked documentation for detailed information. ```APIDOC ## List Quests ### Description Endpoint to list quests. ### Method GET ### Endpoint /quests ### Query Parameters Refer to the linked documentation for query parameters. ``` -------------------------------- ### Add XP to User Source: https://docs.zealy.io/api-reference/users/add-and-remove-xp Use this POST endpoint to add XP to a specific user. The XP added will be reflected in user notifications, activity, and leaderboards. ```http POST https://api-v2.zealy.io/public/communities/{subdomain}/users/{userId}/xp ``` -------------------------------- ### Retrieve a Leaderboard Source: https://docs.zealy.io/api-reference/leaderboards/retrieve-a-leaderboard Fetches a leaderboard for a given community. Requires `page` and `limit` query parameters. Can retrieve all-time or sprint-specific leaderboards. ```APIDOC ## GET /public/communities/{subdomain}/leaderboard ### Description Retrieves a leaderboard for a specific community. Supports fetching all-time leaderboards by default, or sprint-specific leaderboards by providing a `sprintId`. ### Method GET ### Endpoint /public/communities/{subdomain}/leaderboard ### Parameters #### Path Parameters - **subdomain** (string) - Required - The subdomain of the community. #### Query Parameters - **page** (integer) - Required - The page number for pagination. - **limit** (integer) - Required - The number of results per page. - **sprintId** (string) - Optional - The ID of the sprint to retrieve the leaderboard for. ### Response #### Success Response (200) - **userId** (string) - Zealy ID of the user. - **name** (string) - Zealy username of the user. - **connectedWallet** (string) - The address of the wallet the user connected to Zealy. - **address** (string) - Wallet address of the user on the blockchain. Ownership is verified if the blockchain is supported. - **xp** (number) - XP of the user in the leaderboard. - **avatar** (string) - URL of the user's avatar. - **twitterId** (string) - Twitter ID of the user. - **twitterUsername** (string) - Twitter username of the user. - **discordHandle** (string) - Discord handle of the user. - **discordId** (string) - Discord ID of the user. - **email** (string) - Email of the user. ``` -------------------------------- ### Review a Submission Source: https://docs.zealy.io/llms.txt Allows for the review of a user's quest submission. ```APIDOC ## POST /api/v1/reviews/submission ### Description Reviews a user's quest submission. ### Method POST ### Endpoint /api/v1/reviews/submission ### Request Body - **submissionId** (string) - Required - The ID of the submission to review. - **status** (string) - Required - The review status ('approved' or 'rejected'). - **comment** (string) - Optional - A comment from the reviewer. ### Response #### Success Response (200) - **message** (string) - Confirmation message of the review action. #### Response Example { "message": "Submission reviewed successfully." } ``` -------------------------------- ### Review the specified claimed quest Source: https://docs.zealy.io/api-reference/reviews/review-a-submission This endpoint allows you to review one or multiple claimed quests by providing their IDs, a status, and optional details like comments, marks, and bonus XP. ```APIDOC ## POST https://api-v2.zealy.io/public/communities/:subdomain/reviews ### Description Allows you to review one or multiple claimed quests. ### Method POST ### Endpoint https://api-v2.zealy.io/public/communities/:subdomain/reviews ### Parameters #### Path Parameters - **subdomain** (String) - Required - Subdomain of your community #### Headers - **x-api-key** (String) - Required - Your API key #### Request Body - **claimedQuestIds** (String[]) - Required - Array of claimed quests Ids to review - **status** (String) - Required - "success", "fail" or "pending" - **comment** (String) - Optional - Comment associated with the review (only if status = "success" or "fail") - **mark** (String) - Optional - "star" (only if status = "success") or "flag" (only if status = "fail") - **bonusXP** (Integer) - Optional - only if status = "success" and mark = "star" ### Response #### Success Response (200) - **reviewedClaimQuestIds** (String[]) - Info about the reviewed quests - **status** (String) - The status of the review operation - **comment** (String) - The comment associated with the review ### Request Example ```json { "claimedQuestIds": ["f88493da-bb52-46e1-920d-e1e10b67f0fb"], "status": "success", "comment": "Amazing Job" } ``` ### Response Example ```json { "reviewedClaimQuestIds": ["f88493da-bb52-46e1-920d-e1e10b67f0fb"], "status": "success", "comment": "Amazing Job" } ``` ``` -------------------------------- ### List Quests Source: https://docs.zealy.io/api-reference/quests/list-quests Retrieves all quests and their details for a specified community. The `claimCounter` indicates the number of claims made for a quest and is cached for 1 hour. ```APIDOC ## GET /public/communities/{subdomain}/quests ### Description Retrieves all quests and their details for a specified community. Admin role required. ### Method GET ### Endpoint /public/communities/{subdomain}/quests ### Parameters #### Path Parameters - **subdomain** (string) - Required - The subdomain of the community. #### Query Parameters None #### Request Body None ### Request Example None ### Response #### Success Response (200) - **quests** (array) - An array of quest objects. - **id** (string) - The unique identifier of the quest. - **name** (string) - The name of the quest. - **description** (string) - The description of the quest. - **claimCounter** (integer) - The number of claims made for the quest (cached for 1 hour). - **status** (string) - The status of the quest (e.g., 'active', 'inactive'). - **createdAt** (string) - The timestamp when the quest was created. - **updatedAt** (string) - The timestamp when the quest was last updated. #### Response Example { "quests": [ { "id": "quest-123", "name": "Complete Tutorial", "description": "Finish the onboarding tutorial.", "claimCounter": 150, "status": "active", "createdAt": "2023-10-27T10:00:00Z", "updatedAt": "2023-10-27T12:00:00Z" } ] } ``` -------------------------------- ### Access OpenAPI Specification Source: https://docs.zealy.io/api-reference/modules Retrieve the OpenAPI specification for the Modules API to understand its structure and endpoints. ```json https://2107641413-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FQvTIrayABkLCC3fDPMH6%2Fuploads%2F5Y9ce8MUzDYfCWO7Rjow%2Fswagger.json?alt=media&token=b290fd3d-d3e3-4f8b-a872-cd7ab166169e ``` -------------------------------- ### Review a Claimed Quest Source: https://docs.zealy.io/api-reference/reviews/review-a-submission Use this endpoint to review one or multiple claimed quests. It requires the community subdomain and your API key. The request body specifies the quests to review, their status, and optional comments or marks. ```json { "reviewedClaimQuestIds": ["f88493da-bb52-46e1-920d-e1e10b67f0fb"], "status": "success", "comment": "Amazing Job" } ``` -------------------------------- ### OpenAPI Specification Reference Source: https://docs.zealy.io/api-reference/communities/community-secret-creation This reference points to the OpenAPI specification for the community secret creation endpoint. It outlines the available parameters and expected request/response formats. ```json https://api-v2.zealy.io/swagger.json ``` -------------------------------- ### Retrieve a Leaderboard Source: https://docs.zealy.io/api-reference/leaderboards/retrieve-a-leaderboard Use this endpoint to fetch leaderboard data for a community. The 'page' and 'limit' query parameters are mandatory. Specify 'sprintId' to retrieve a specific sprint's leaderboard. ```http GET https://api-v2.zealy.io/public/communities/{subdomain}/leaderboard?page=&limit= ``` -------------------------------- ### Create Quest Source: https://docs.zealy.io/api-reference/quests/create-quest Allows you to create a new quest for a specific community by providing quest details in the request body. ```APIDOC ## POST /public/communities/{subdomain}/quests ### Description Creates a new quest for a given community. ### Method POST ### Endpoint /public/communities/{subdomain}/quests ### Parameters #### Path Parameters - **subdomain** (string) - Required - The subdomain of the community where the quest will be created. ### Request Body - **name** (string) - Required - The name of the quest. - **description** (string) - Optional - A detailed description of the quest. - **quest_type** (string) - Required - The type of the quest (e.g., 'twitter_follow', 'discord_join'). - **reward_type** (string) - Required - The type of reward for completing the quest (e.g., 'xp', 'token'). - **reward_amount** (integer) - Required - The amount of reward to be given. - **is_active** (boolean) - Optional - Whether the quest is active or not. Defaults to true. - **start_date** (string) - Optional - The start date of the quest in ISO 8601 format. - **end_date** (string) - Optional - The end date of the quest in ISO 8601 format. ### Request Example ```json { "name": "Follow us on Twitter", "description": "Follow our official Twitter account to earn rewards.", "quest_type": "twitter_follow", "reward_type": "xp", "reward_amount": 100, "is_active": true, "start_date": "2023-10-27T10:00:00Z", "end_date": "2023-11-27T10:00:00Z" } ``` ### Response #### Success Response (201 Created) - **id** (string) - The unique identifier of the created quest. - **name** (string) - The name of the quest. - **description** (string) - The description of the quest. - **quest_type** (string) - The type of the quest. - **reward_type** (string) - The type of reward. - **reward_amount** (integer) - The amount of reward. - **is_active** (boolean) - Indicates if the quest is active. - **start_date** (string) - The start date of the quest. - **end_date** (string) - The end date of the quest. - **created_at** (string) - The timestamp when the quest was created. #### Response Example ```json { "id": "quest_abc123", "name": "Follow us on Twitter", "description": "Follow our official Twitter account to earn rewards.", "quest_type": "twitter_follow", "reward_type": "xp", "reward_amount": 100, "is_active": true, "start_date": "2023-10-27T10:00:00Z", "end_date": "2023-11-27T10:00:00Z", "created_at": "2023-10-27T09:30:00Z" } ``` ``` -------------------------------- ### Update Webhook Source: https://docs.zealy.io/api-reference/webhooks Updates an existing webhook's configuration. ```APIDOC ## PATCH /public/communities/{subdomain}/webhooks/{webhookId} ### Description Updates an existing webhook's configuration. ### Method PATCH ### Endpoint /public/communities/{subdomain}/webhooks/{webhookId} ### Parameters #### Path Parameters - **subdomain** (string) - Required - The subdomain of the community. - **webhookId** (string) - Required - The ID of the webhook to update. #### Request Body - **url** (string) - Optional - The new URL for the webhook. - **events** (array) - Optional - A new list of event types to subscribe to. - **description** (string) - Optional - A new description for the webhook. ``` -------------------------------- ### List Webhook Event Types Source: https://docs.zealy.io/api-reference/webhooks Retrieves a list of all available webhook event types that can be subscribed to. ```APIDOC ## GET /public/communities/{subdomain}/webhooks-event-types ### Description Retrieves a list of all available webhook event types that can be subscribed to. ### Method GET ### Endpoint /public/communities/{subdomain}/webhooks-event-types ### Parameters #### Path Parameters - **subdomain** (string) - Required - The subdomain of the community. ``` -------------------------------- ### List sprints Source: https://docs.zealy.io/api-reference/leaderboards Lists all available sprints associated with leaderboards. This endpoint helps in identifying and managing different sprint periods. ```APIDOC ## GET /pages/kmdvuFqWHkWKb0tzWkM1 ### Description Lists all available sprints. ### Method GET ### Endpoint /pages/kmdvuFqWHkWKb0tzWkM1 ``` -------------------------------- ### List claimed quests Source: https://docs.zealy.io/api-reference/reviews/claimed-quests-lookup Retrieves a list of claimed quests for a community. ```APIDOC ## GET /public/communities/{subdomain}/reviews ### Description Retrieves a list of claimed quests for a community. ### Method GET ### Endpoint /public/communities/{subdomain}/reviews ### Parameters #### Path Parameters - **subdomain** (string) - Required - The subdomain of the community. ### Response #### Success Response (200) - **id** (string) - ID of the claimed quest. - **user** (object) - Object containing the `id`, `name`, and `avatar` url of the user. - **quest** (object) - Object containing `id` and `name` of the quest. - **status** (enum) - Status of the review (success, fail, pending). - **mark** (enum) - Indicates if the review has been marked as a star or flagged (star, flag), can be null. - **tasks** (array of object) - Contains the list of tasks the user completed, with submissions. - **updatedAt** (string) - ISO timestamp of the last update. - **createdAt** (string) - ISO timestamp of when the quest was claimed. ``` -------------------------------- ### Retrieve a leaderboard Source: https://docs.zealy.io/api-reference/leaderboards Retrieves detailed information about a specific leaderboard. This endpoint is useful for fetching the current state and data of a leaderboard. ```APIDOC ## GET /pages/sETq0gPt3Mi0OdsA1yJ8 ### Description Retrieves detailed information about a specific leaderboard. ### Method GET ### Endpoint /pages/sETq0gPt3Mi0OdsA1yJ8 ``` -------------------------------- ### Add XP to User Source: https://docs.zealy.io/api-reference/users/add-and-remove-xp Adds XP to a specified user within a community. The XP will be reflected in the user's activity, notifications, and leaderboards. ```APIDOC ## POST /public/communities/{subdomain}/users/{userId}/xp ### Description Adds XP to a specified user within a community. The XP will be reflected in the user's activity, notifications, and leaderboards. ### Method POST ### Endpoint /public/communities/{subdomain}/users/{userId}/xp ### Parameters #### Path Parameters - **subdomain** (string) - Required - The subdomain of the community. - **userId** (string) - Required - The ID of the user to whom XP will be added. #### Request Body - **xp** (integer) - Required - The amount of XP to add. ### Request Example ```json { "xp": 100 } ``` ### Response #### Success Response (200) - **message** (string) - A success message indicating the XP was added. #### Response Example ```json { "message": "XP added successfully" } ``` ``` -------------------------------- ### List Events for a Webhook Source: https://docs.zealy.io/api-reference/webhooks Retrieves a list of events that have been sent to a specific webhook. ```APIDOC ## GET /public/communities/{subdomain}/webhooks/{webhookId}/events ### Description Retrieves a list of events that have been sent to a specific webhook. ### Method GET ### Endpoint /public/communities/{subdomain}/webhooks/{webhookId}/events ### Parameters #### Path Parameters - **subdomain** (string) - Required - The subdomain of the community. - **webhookId** (string) - Required - The ID of the webhook. ``` -------------------------------- ### User Lookup Source: https://docs.zealy.io/api-reference/users Retrieves information about a specific user. ```APIDOC ## GET /users/:userId ### Description Retrieves detailed information about a specific user based on their user ID. ### Method GET ### Endpoint /users/:userId ### Parameters #### Path Parameters - **userId** (string) - Required - The unique identifier of the user to retrieve. ``` -------------------------------- ### List Quests Source: https://docs.zealy.io/llms.txt Retrieves a list of quests, with options to filter by community and active status. ```APIDOC ## GET /api/v1/quests ### Description Retrieves a list of quests. ### Method GET ### Endpoint /api/v1/quests ### Parameters #### Query Parameters - **communityId** (string) - Optional - Filter quests by community ID. - **isActive** (boolean) - Optional - Filter quests by their active status. ### Response #### Success Response (200) - **quests** (array) - A list of quest objects. - **id** (string) - The ID of the quest. - **name** (string) - The name of the quest. - **communityId** (string) - The ID of the community. - **xpAmount** (integer) - The XP awarded for the quest. - **isActive** (boolean) - The active status of the quest. #### Response Example { "quests": [ { "id": "quest_123abc", "name": "Join our Discord", "communityId": "community_xyz789", "xpAmount": 100, "isActive": true }, { "id": "quest_456def", "name": "Follow us on Twitter", "communityId": "community_xyz789", "xpAmount": 50, "isActive": false } ] } ``` -------------------------------- ### Community lookup Source: https://docs.zealy.io/api-reference/communities Retrieves information about a specific community. ```APIDOC ## GET /pages/qOCsTbej6dkewkTizaNa ### Description Retrieves information about a specific community. ### Method GET ### Endpoint /pages/qOCsTbej6dkewkTizaNa ``` -------------------------------- ### Community Member Check API Reference Source: https://docs.zealy.io/api-reference/communities/community-member-check This snippet shows the OpenAPI specification path for checking community membership. It is a POST request to the /public/communities/{subdomain}/member endpoint. ```json { "summary": "Check if a user is a member of a community", "description": "This endpoint can be called on any communities, even if you are not an admin of it.", "operationId": "public.communities.member.post", "parameters": [ { "name": "subdomain", "in": "path", "required": true, "schema": { "type": "string" } } ], "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CommunityMemberCheckRequest" } } } }, "responses": { "200": { "description": "OK", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CommunityMemberCheckResponse" } } } } } } ``` -------------------------------- ### POST /public/communities/{subdomain}/secrets Source: https://docs.zealy.io/api-reference/communities/community-secret-creation Creates a community secret for API tasks. Requires admin privileges for the specified community. ```APIDOC ## POST /public/communities/{subdomain}/secrets ### Description Creates a community secret for API tasks. Requires admin privileges for the specified community. ### Method POST ### Endpoint /public/communities/{subdomain}/secrets ### Parameters #### Path Parameters - **subdomain** (string) - Required - The subdomain of the community for which to create the secret. ``` -------------------------------- ### Fetch a user by Zealy ID Source: https://docs.zealy.io/api-reference/users/user-lookup Retrieves a specific user's information using their unique Zealy ID. ```APIDOC ## GET /public/communities/{subdomain}/users/{userId} ### Description Retrieves a specific user's information using their unique Zealy ID. ### Method GET ### Endpoint /public/communities/{subdomain}/users/{userId} ### Parameters #### Path Parameters - **subdomain** (string) - Required - The subdomain of the community. - **userId** (string) - Required - The Zealy ID of the user to retrieve. ``` -------------------------------- ### Community Secret Creation Source: https://docs.zealy.io/api-reference/communities Creates a new secret for a community. ```APIDOC ## POST /pages/UP1kB8xY0NyK3ou7R4q8 ### Description Creates a new secret for a community. ### Method POST ### Endpoint /pages/UP1kB8xY0NyK3ou7R4q8 ``` -------------------------------- ### List Sprints Source: https://docs.zealy.io/api-reference/leaderboards/list-sprints Retrieves a list of sprints for a given community. An optional query parameter `onlyCurrent=true` can be used to fetch only the active sprint. ```APIDOC ## GET /public/communities/{subdomain}/leaderboard/sprint ### Description Retrieves a list of sprints that have occurred within a community. If the `onlyCurrent` query parameter is set to `true`, the response will be filtered to include only the active sprint. ### Method GET ### Endpoint /public/communities/{subdomain}/leaderboard/sprint ### Parameters #### Query Parameters - **onlyCurrent** (boolean) - Optional - If true, only the current active sprint will be returned. ### Response #### Success Response (200) - **id** (string) - ID of the sprint - **name** (string) - Name of the sprint - **description** (string) - Description of the sprint - **image** (string) - URL of the sprint image - **color** (string) - Hex color associated with the sprint (e.g: "#833f6a") - **rewards** (object) - A TipTap document describing the rewards of the sprint - **rewardZone** (number) - The leaderboard position up to which users will be rewarded. - **includedQuestsIds** (array of strings) - IDs of the quests that are part of the sprint. If empty, all quests in the community are part of the sprint (this behavior will be deprecated). - **startingAt** (string) - ISO timestamp indicating the start of the sprint - **endingAt** (string) - ISO timestamp indicating the end of the sprint - **createdAt** (string) - ISO timestamp indicating the creation date and time of the sprint ``` -------------------------------- ### Check Community Membership Source: https://docs.zealy.io/api-reference/communities/community-member-check Verifies if a given user is a member of a specific community by checking their subdomain. ```APIDOC ## POST /public/communities/{subdomain}/member ### Description This endpoint enables you to verify whether a user belongs to a community. It can be called on any community, even if you are not an admin of it. ### Method POST ### Endpoint /public/communities/{subdomain}/member ### Parameters #### Path Parameters - **subdomain** (string) - Required - The subdomain of the community to check membership for. #### Request Body (The source does not specify the request body structure. Refer to the OpenAPI specification for details.) ### Response (The source does not specify the response structure. Refer to the OpenAPI specification for details.) ``` -------------------------------- ### OpenAPI Specification for Update Quest Source: https://docs.zealy.io/api-reference/quests/update-quest This OpenAPI specification defines the endpoint for updating a quest. It specifies the HTTP method (PATCH) and the URL structure, including path parameters for subdomain and quest ID. ```openapi GET https://api-v2.zealy.io/swagger.json PATH /public/communities/{subdomain}/quests/{questId} METHOD patch ``` -------------------------------- ### Ban User API Endpoint Source: https://docs.zealy.io/api-reference/users/ban-user Use this endpoint to ban a user from your community. The user will be unable to claim quests, their pending quests will be canceled, and they will be removed from leaderboards. ```bash POST https://api-v2.zealy.io/public/communities/:subdomain/users/:userId/ban ``` -------------------------------- ### Referral Code Source: https://docs.zealy.io/api-reference/users Retrieves the referral code associated with a user. ```APIDOC ## GET /users/:userId/referral-code ### Description Retrieves the referral code associated with a specific user. ### Method GET ### Endpoint /users/:userId/referral-code ### Parameters #### Path Parameters - **userId** (string) - Required - The unique identifier of the user whose referral code is requested. ``` -------------------------------- ### Remove XP from User Source: https://docs.zealy.io/api-reference/users/add-and-remove-xp Use this DELETE endpoint to remove XP from a specific user. The XP removed will be reflected in user notifications, activity, and leaderboards. ```http DELETE https://api-v2.zealy.io/public/communities/{subdomain}/users/{userId}/xp ``` -------------------------------- ### List Sprints API Endpoint Source: https://docs.zealy.io/api-reference/leaderboards/list-sprints This endpoint retrieves a list of sprints for a community. Pass `onlyCurrent=true` to filter for the active sprint. ```http GET https://docs.zealy.io/api-reference/leaderboards/list-sprints.md?ask= ``` -------------------------------- ### Update Quest Source: https://docs.zealy.io/api-reference/quests/update-quest Updates an existing quest by providing its ID and the subdomain of the community it belongs to. This operation allows modification of quest details. ```APIDOC ## PATCH /public/communities/{subdomain}/quests/{questId} ### Description Updates an existing quest. ### Method PATCH ### Endpoint /public/communities/{subdomain}/quests/{questId} ### Parameters #### Path Parameters - **subdomain** (string) - Required - The subdomain of the community. - **questId** (string) - Required - The ID of the quest to update. ### Request Body (The request body schema is not explicitly defined in the provided text, but typically includes fields to be updated.) ### Response #### Success Response (200) (The success response schema is not explicitly defined in the provided text.) #### Response Example (No example provided in the source text.) ``` -------------------------------- ### Ban User Source: https://docs.zealy.io/api-reference/users Bans a user from the platform. ```APIDOC ## POST /users/:userId/ban ### Description Bans a user from the platform, preventing them from participating. ### Method POST ### Endpoint /users/:userId/ban ### Parameters #### Path Parameters - **userId** (string) - Required - The unique identifier of the user to ban. ``` -------------------------------- ### OpenAPI Specification for Delete Zealy Connect Source: https://docs.zealy.io/api-reference/users/delete-zealy-connect-for-member This OpenAPI specification defines the endpoint for deleting Zealy Connect for a member. It specifies the HTTP method, path parameters, and expected responses. ```json { "openapi": "3.0.0", "info": { "title": "Zealy API", "version": "1.0.0" }, "paths": { "/public/communities/{subdomain}/users/{userId}/zealy_connect": { "delete": { "summary": "Delete Zealy Connect for member", "parameters": [ { "name": "subdomain", "in": "path", "required": true, "schema": { "type": "string" } }, { "name": "userId", "in": "path", "required": true, "schema": { "type": "string" } } ], "responses": { "204": { "description": "No Content" } } } } } } ```