Create a workspace skill
POST
/workspaces/{workspaceId}/skills
import { FloraClient } from '@flora-ai/flora';
const client = new FloraClient({ apiKey: process.env['FLORA_API_KEY'] });
const skill = await client.workspaces.skills.create({ workspaceId: '<workspaceId>', name: 'Brand Voice', description: 'Writes in our brand voice.', body: '# Brand Voice\nWrite warmly and plainly.',});console.log(skill);curl -X POST 'https://app.flora.ai/api/v1/workspaces/<workspaceId>/skills' \ -H 'Authorization: Bearer $FLORA_API_KEY' \ -H 'Content-Type: application/json' \ -d '{ "name": "Brand Voice", "description": "Writes in our brand voice.", "body": "# Brand Voice\nWrite warmly and plainly."}'Creates a new skill in the workspace named in the path. Mutating public API requests support an optional Idempotency-Key header for client retries; duplicate keys within two hours return idempotency_duplicate.
Error responses use the standard error body.
Authorizations
Section titled “Authorizations ”Parameters
Section titled “ Parameters ”Path Parameters
Section titled “Path Parameters ” workspaceId
required
Workspace identifier
string
Workspace identifier
Request Body required
Section titled “Request Body required ” Media type application/json
object
name
required
Skill name
string
description
required
Skill description
string
body
required
Skill body
string
thumbnail_video_url
Skill thumbnail video URL
string
thumbnail_image_url
Skill thumbnail image URL
string
Responses
Section titled “ Responses ”Skill created.
Media type application/json
object
skill_id
required
Skill identifier
string
workspace_id
required
Workspace identifier
string
slug
required
Skill URL slug
string
name
required
Skill name
string
description
required
Skill description
string
thumbnail_video_url
Skill thumbnail video URL
string
thumbnail_image_url
Skill thumbnail image URL
string
Example
{ "skill_id": "skill_abc123", "workspace_id": "ws_abc123", "slug": "brand-voice", "name": "Brand Voice", "description": "Writes in our brand voice."}