# Testlify Support Documentation > Documentation for Testlify Support ## Guides - [How to Generate and Use an Access Token in Testlify](https://docs.testlify.com/docs/how-to-generate-and-use-an-access-token-in-testlify.md) - [Setting Up Your Webhook: A Step-by-Step Guide](https://docs.testlify.com/docs/setting-up-your-webhook-a-step-by-step-guide.md) - [Reseller Settings Configuration Guide.](https://docs.testlify.com/docs/reseller-settings-configuration-guide.md) - [Manage Workspace ](https://docs.testlify.com/docs/manage-workspace.md) - [Reseller - Workspace Creation ](https://docs.testlify.com/docs/workspace-creation.md) ## API Reference - [Get All Assessments](https://docs.testlify.com/reference/get_all_assessments.md): Retrieve a list of assessments with optional filters and pagination. - [Get Single Assessment](https://docs.testlify.com/reference/get_single_assessment.md): Retrieve detailed information about a specific assessment by its ID. - [Create Assessment from Template](https://docs.testlify.com/reference/create_assessment_from_template.md): Creates a new assessment from an existing template. This endpoint allows resellers to create assessments based on predefined templates. - [Create Compose Assessment](https://docs.testlify.com/reference/create_compose_assessment.md): Creates a new assessment by composing it from scratch with specified test libraries and settings. This endpoint allows resellers to create custom assessments with specific configurations. - [Get All Candidate Assessment List](https://docs.testlify.com/reference/get_candidate_assessments.md): Retrieve a list of all assessments associated with a specific candidate ID. - [Invite Candidates to assessment](https://docs.testlify.com/reference/invite_candidates.md): Send invitation emails to one or more candidates for a given assessment. - [Get all candidates within an assessment](https://docs.testlify.com/reference/get_all_candidates.md): Retrieve a paginated list of candidates for a specific assessment, with filtering and sorting options. - [Get Candidate Result for an Assessment](https://docs.testlify.com/reference/get_candidate_result.md): Retrieve detailed information about a specific candidate's assessment including scores, reports, and proctoring data. - [Get all candidates](https://docs.testlify.com/reference/get_candidate_list.md): Retrieve a paginated list of candidates with filtering and sorting options. - [Get Profile Summary](https://docs.testlify.com/reference/get_profile_summary.md): Retrieves comprehensive profile information including organization details, user workspace profile, and discover template data for the authenticated user - [Get Users within a Workspace](https://docs.testlify.com/reference/get_workspace_users.md): Retrieves a paginated list of team members in the workspace with filtering and sorting options. - [Update User Workspace Profile](https://docs.testlify.com/reference/update_user_workspace_profile.md): Update the authenticated user's workspace profile information including personal details, language preferences, and accessibility settings. - [Update support email for workspace](https://docs.testlify.com/reference/update_support_email.md): Update the authenticated user's workspace profile information including personal details, language preferences, and accessibility settings. - [Get Workspace Credit Details](https://docs.testlify.com/reference/get_workspace_credit_details.md): Retrieve credit information for the authenticated user's workspace, including total credits, remaining credits, spent credits, and billing details. - [Invite Users to Workspace](https://docs.testlify.com/reference/invite_workspace_users.md): Invites one or more users to join the workspace by sending invitation emails. - [Create Access Token](https://docs.testlify.com/reference/generate_access_token.md): Generates a new access token for workspace integration. The endpoint creates and returns an access token with the specified configuration and expiration. - [Get Access Tokens](https://docs.testlify.com/reference/get_access_tokens.md): Retrieve a list of access tokens for the authenticated user's organization with optional filtering by query, creator, and status. - [Get Industry Types](https://docs.testlify.com/reference/get_industry_types.md): Retrieve a list of all available industry types for test library categorization. This endpoint provides static data and does not require authentication. - [Get Test Library Types](https://docs.testlify.com/reference/get_test_library_types.md): Retrieve a list of all available test library types for assessment categorization. This endpoint provides static data and does not require authentication. - [Get Coding Languages](https://docs.testlify.com/reference/get_coding_languages.md): Retrieve a list of all available coding languages for assessments. This endpoint accepts an optional search query and returns static data from cache. - [Get Job Roles](https://docs.testlify.com/reference/get_job_roles.md): Retrieve a list of job roles available within the authenticated user's organization. Requires a valid Bearer token. - [Get Test Libraries](https://docs.testlify.com/reference/get_test_libraries.md): Search and retrieve a list of test libraries with optional filters and pagination. - [List test library types](https://docs.testlify.com/reference/list_test_library_types.md): Returns the available test library types. Use the `id` of the type you want as `testLibraryTypeId` when creating or updating a test library — call this endpoint first to populate a selection list for your users rather than hardcoding ids. - [List test categories](https://docs.testlify.com/reference/list_test_library_categories.md): Returns the available test categories. Use the `id` of the categories you want as entries in `testCategory` when creating or updating a test library — call this endpoint first to populate a selection list for your users rather than hardcoding ids. - [Create a company test library](https://docs.testlify.com/reference/create_company_test_library.md): Creates a new test library owned by your organization. Behavior to be aware of: - Your organization's daily and monthly test-creation limit is checked first; exceeding either returns an error. - If `testLibraryTypeId` is supplied, it must reference an existing test library type — use **List test library types** to get valid options. - If `testCategory` is supplied, every id must reference an existing category — use **List test categories** to get valid options. - If `setTimeAt` is set to question-level timing, `timeLimit` is ignored (timing is controlled per question instead). If test-level timing is used and `timeLimit` is `0`, the test is treated as unlimited-time. - A newly created library always starts in `DRAFT` status, even if `PUBLISHED` is sent — a library with no questions cannot be published yet. - `orgId` is determined by your authentication token; it is not read from the request body. - A default question-selection preset is created automatically; you don't need to send one. - [Add a question to a test library](https://docs.testlify.com/reference/create_company_test_lib_question.md): Adds a single question to the given test library. Behavior to be aware of: - If a question with the same text, type, and answer options already exists in this library, the request is rejected as a duplicate. - `skillId` may reference an existing skill on the library, or a skill name that doesn't exist yet — in the latter case it's automatically added as a new skill. If it's left blank and the library has no skills yet, the request is rejected. - If `isCommentMandatory` is enabled, `isCommentAllowed` must also be enabled. - Audio/video-based question types require `recordingTime` greater than 0. - For a "most/least impactful" multiple-choice question, exactly one option must be marked most impactful and exactly one least impactful, and both must carry a numeric score. - AI-driven question types using an advanced prompt require a non-blank `aiPrompt`; conversation-simulation questions also require a non-blank `aiPersona`. - Newly created questions are always published immediately. - After a question is added, the parent library's question count, scoring, and status (draft → published once it has at least one question) update automatically. - [Update test library settings and publish](https://docs.testlify.com/reference/update_company_test_library.md): Updates a test library's settings — shuffle behavior, question count rules, skills, timing, and category — and publishes it once it has questions. **Publishing works automatically, based on question count:** a library with no questions is always saved as `DRAFT`, and a library with at least one question is always saved as `PUBLISHED`. This happens regardless of the `status` value you send — you don't need to set it explicitly once questions have been added. Other behavior to be aware of: - The test library must exist and belong to your organization. - Switching to question-level timing recalculates each question's duration and the overall time limit accordingly. Switching to test-level timing removes per-question time limits (except for question types that require one, such as audio/video answers). - `skills` cannot be submitted as an empty array. Removing a skill that's still used by an existing question is also rejected. - If `testCategory` is supplied, every id must reference an existing category — use **List test categories** to get valid options. - Any assessments already using this library have their time limits kept in sync automatically. - This endpoint returns no response body on success — fetch the library afterward to see the final state. - [Get Questions](https://docs.testlify.com/reference/get_questions.md): Search and retrieve a list of questions with optional filters and pagination. - [Get Question Details](https://docs.testlify.com/reference/get_question_details.md): Retrieve detailed information for a specific question by its ID. - [Login](https://docs.testlify.com/reference/reseller_login.md): Verifies workspace key and credentials to generate access token for workspace access. Supports TOTP authentication and recovery codes. - [Reseller Registration](https://docs.testlify.com/reference/register_reseller.md): Used for registering a new reseller in Testlify. This endpoint is specifically designed for resellers and requires a valid API key in the header. - [Create a new webhook](https://docs.testlify.com/reference/create_webhook.md): Create a webhook subscription to receive real-time notifications about assessment and candidate events. - [Update an existing webhook](https://docs.testlify.com/reference/update_webhook.md): Update a webhook subscription to modify the endpoint URL, events, or other webhook configuration settings. - [List all webhooks](https://docs.testlify.com/reference/v2listwebhooks.md): Returns a paginated list of all V2 webhooks for the authenticated organization. Supports sorting and pagination. - [Create a webhook](https://docs.testlify.com/reference/v2createwebhook.md): Creates a new webhook endpoint. Validates events, tests the payload URL for reachability, checks for duplicate URL+event combinations, then registers the endpoint. The database record is created automatically via an incoming webhook event. - [Get a webhook by ID](https://docs.testlify.com/reference/v2getwebhookbyid.md): Returns the details of a single webhook endpoint by its database ID. - [Update a webhook](https://docs.testlify.com/reference/v2updatewebhook.md): Updates an existing webhook endpoint. Validates events, tests the payload URL, checks for duplicate URL+event combinations, then updates the endpoint. The database record is updated automatically via an incoming webhook event. - [Delete a webhook](https://docs.testlify.com/reference/v2deletewebhook.md): Deletes a webhook endpoint and soft-deletes the database record. - [Get webhook logs portal link](https://docs.testlify.com/reference/v2getwebhooklogs.md): Returns a redirect URL to the webhook dashboard where delivery logs for this webhook can be viewed. - [Send test event to a webhook](https://docs.testlify.com/reference/v2testwebhookevent.md): Sends test webhook events to the endpoint's payload URL. Each specified event is sent with sample data and the response status is returned. Results are logged. - [Get embedded dashboard link](https://docs.testlify.com/reference/v2getembeddedportallink.md): Returns an authenticated URL to the embedded webhook dashboard portal for the organization. The URL includes whitelabel parameters (brand color, logo, font). - [Get webhook signing secret](https://docs.testlify.com/reference/v2getwebhooksecret.md): Returns the Svix signing secret for the given webhook endpoint. Use this secret to verify webhook signatures on the receiver side. - [Rotate webhook signing secret](https://docs.testlify.com/reference/v2rotatewebhooksecret.md): Rotates the Svix signing secret for the given webhook endpoint. Supply an optional custom key in the request body, or omit the body to let Svix auto-generate. The previous secret remains valid for a 24-hour grace period. - [Get or create webhook application](https://docs.testlify.com/reference/v2getorcreateapplication.md): Returns the webhook application for the authenticated organization. Creates one automatically if it does not exist. The application UID is set to the organization ID. - [Delete webhook application](https://docs.testlify.com/reference/v2deleteapplication.md): Deletes the webhook application for the authenticated organization. This will remove all endpoints and event data associated with the application.