Examplary
Start for free
Developer docs

Upsert question type

POSThttps://api.examplary.ai/question-types

Creates a new question type or updates an existing one. If the question type already exists, it will be updated; otherwise, a new one will be created.

Request body

$schemastring
idstring· pattern: ^([a-z][a-z0-9-]*)(\.[a-z][a-z0-9-]*)+$required

Unique identifier for the question type (e.g. 'my-org.color-picker')

namestring | objectrequired

Display name for the question type, can be a simple string or translation object

descriptionstring | objectrequired

Description of the question type, can be a simple string or translation object

iconstring· pattern: ^(https?:\/\/|\.)([a-zA-Z0-9._~:/?#@!$&'()*+,;=%-]+)$

Path to the icon for this question type

shortcutstring· max length: 1

Keyboard shortcut for quick access to this question type

generationobject

Options for AI question generation

gradingobject

Options for AI question grading

responseProcessingobject

Options for response processing

scanningobject

Options for AI question scanning

timeEstimateMinutesnumber· >= 1

Estimated time in minutes to complete this question type

isAiboolean

Whether this question type uses AI functionality

backgroundColorstring

Background color for the question type

enforcePositionstring

Position enforcement for this question type

Allowed values:startend

enforceTitlestring | object

Enforced title for this question type

hideSettingsboolean

Whether to hide settings for this question type

isPreviewRefreshableboolean

Whether the preview can be refreshed for this question type

hasSimpleScoringboolean

Whether this question type has simple scoring

titlePlaceholderstring | object

Placeholder text for the title field

descriptionPlaceholderstring | object

Placeholder text for the description field

untitledPlaceholderstring | object

Placeholder text for untitled questions

componentsobject

Paths to the components used by this question type

functionsobject

Path to the function implementations for this question type

settingsarray object[]

Configuration settings for the question type

publicboolean

Whether this question type is public and can be used by all users

deprecatedboolean

Whether this question type is deprecated: existing questions keep working, but no new ones can be added

translationsobject

Custom translations for this question type

capabilitiesobject

Capabilities of the question type for various operations

exportobject

Export configuration for various formats

importobject

Import configuration for various formats

metadataobject

Optional metadata for the question type, only used by external applications

readmestring· urideprecated

Deprecated: use readmeUrls instead

readmeUrlsobject

URLs to the README documentation for this question type, keyed by language code

previewImagestring· urideprecated

Deprecated: use previewImageUrls instead

previewImageUrlsobject

URLs to a preview image for this question type, keyed by language code

previewDatastring· uri

URL to example question data (JSON) used to preview this question type

stylesheetstring· uri
indexnumber
isDefaultboolean

Responses

400 — Validation Error

successbooleanrequired

Allowed values:false

errorarray any[]required
dataanyrequired

429 — Rate limit exceeded

Requirements

Rate limit

50 requests per minute per user.

OAuth scopes

This endpoint requires the question-types:write scope to be present.