slackline/api/slackbot

This module is generated by gleam run -m slackline_codegen/generate. Do not edit it by hand.

Slackbot skills: create, update, share and toggle skills for Slackbot.

Types

A Slackbot skill.

pub type Skill {
  Skill(
    id: String,
    type_: option.Option(String),
    display_name: option.Option(String),
    name: option.Option(String),
    description: option.Option(String),
    category: option.Option(String),
    example_prompt: option.Option(String),
    instructions: option.Option(String),
    visibility: option.Option(String),
    is_official: option.Option(Bool),
    access: option.Option(String),
    mcp_servers: option.Option(List(SkillMcpServer)),
    usage_count: option.Option(Int),
    library_count: option.Option(Int),
    creator_id: option.Option(String),
    date_created: option.Option(Int),
    date_updated: option.Option(Int),
    permalink: option.Option(String),
  )
}

Constructors

  • Skill(
      id: String,
      type_: option.Option(String),
      display_name: option.Option(String),
      name: option.Option(String),
      description: option.Option(String),
      category: option.Option(String),
      example_prompt: option.Option(String),
      instructions: option.Option(String),
      visibility: option.Option(String),
      is_official: option.Option(Bool),
      access: option.Option(String),
      mcp_servers: option.Option(List(SkillMcpServer)),
      usage_count: option.Option(Int),
      library_count: option.Option(Int),
      creator_id: option.Option(String),
      date_created: option.Option(Int),
      date_updated: option.Option(Int),
      permalink: option.Option(String),
    )

    Arguments

    id

    A canvas file ID, or a builtin: reference for built-in skills.

    type_

    Kind of skill, such as canvas.

    display_name

    Human-readable label.

    name

    Name of the skill.

    description

    When Slackbot should use the skill.

    category

    One of the skill categories, such as productivity.

    example_prompt

    Example prompt. {skill} becomes the skill mention.

    instructions

    Markdown body of the skill. Only returned by slackbot.skills.info.

    visibility

    Who can see the skill, such as invite_only or anyone_can_view.

    is_official

    Whether the skill is one of the organization’s official skills.

    access

    The caller’s effective access to the skill canvas: read, comment, write or owner.

    mcp_servers

    Apps the skill needs.

    usage_count

    How many times the skill was used.

    library_count

    How many libraries the skill is in.

    creator_id

    User who created the skill.

    permalink

    Permalink to the skill’s canvas.

Which skills to list.

pub type SkillFilter {
  Library
  Owned
  Catalog
}

Constructors

  • Library

    library

  • Owned

    owned

  • Catalog

    catalog

An app (MCP server) a skill needs.

pub type SkillMcpServer {
  SkillMcpServer(
    service_type: option.Option(String),
    app_id: option.Option(String),
    server_id: option.Option(String),
    display_name: option.Option(String),
    is_available: option.Option(Bool),
  )
}

Constructors

  • SkillMcpServer(
      service_type: option.Option(String),
      app_id: option.Option(String),
      server_id: option.Option(String),
      display_name: option.Option(String),
      is_available: option.Option(Bool),
    )

    Arguments

    service_type

    Kind of server, such as app.

    app_id

    ID of the app providing the server.

    server_id

    ID of the MCP server.

    display_name

    Name of the app.

    is_available

    Whether the server is available to the caller.

Identifies slackbot.skills.create in the slackline.Call that skills_create returns.

pub type SkillsCreate

A successful response from slackbot.skills.create.

pub type SkillsCreateResponse {
  SkillsCreateResponse(skill: Skill)
}

Constructors

  • SkillsCreateResponse(skill: Skill)

    Arguments

    skill

    The created skill.

Identifies slackbot.skills.delete in the slackline.Call that skills_delete returns.

pub type SkillsDelete

Identifies slackbot.skills.info in the slackline.Call that skills_info returns.

pub type SkillsInfo

A successful response from slackbot.skills.info.

pub type SkillsInfoResponse {
  SkillsInfoResponse(skill: Skill)
}

Constructors

  • SkillsInfoResponse(skill: Skill)

    Arguments

    skill

    The skill, including its instructions.

Identifies slackbot.skills.library.add in the slackline.Call that skills_library_add returns.

pub type SkillsLibraryAdd

Identifies slackbot.skills.library.remove in the slackline.Call that skills_library_remove returns.

pub type SkillsLibraryRemove

Identifies slackbot.skills.list in the slackline.Call that skills_list returns.

pub type SkillsList

A successful response from slackbot.skills.list.

pub type SkillsListResponse {
  SkillsListResponse(
    skills: option.Option(List(Skill)),
    response_metadata: option.Option(slackline.ResponseMetadata),
  )
}

Constructors

Identifies slackbot.skills.update in the slackline.Call that skills_update returns.

pub type SkillsUpdate

A successful response from slackbot.skills.update.

pub type SkillsUpdateResponse {
  SkillsUpdateResponse(skill: Skill)
}

Constructors

  • SkillsUpdateResponse(skill: Skill)

    Arguments

    skill

    The updated skill.

Values

pub fn skill_decoder() -> decode.Decoder(Skill)

Decodes Skill from json.

pub fn skill_filter_decoder() -> decode.Decoder(SkillFilter)

Decodes SkillFilter from a json string.

pub fn skill_filter_from_string(
  string: String,
) -> Result(SkillFilter, Nil)

Parses SkillFilter from its json string.

pub fn skill_filter_to_json(it: SkillFilter) -> json.Json

Encodes SkillFilter as a json string.

pub fn skill_filter_to_string(it: SkillFilter) -> String

The json string of SkillFilter.

pub fn skill_mcp_server_decoder() -> decode.Decoder(
  SkillMcpServer,
)

Decodes SkillMcpServer from json.

pub fn skill_mcp_server_to_json(it: SkillMcpServer) -> json.Json

Encodes SkillMcpServer as json.

pub fn skill_to_json(it: Skill) -> json.Json

Encodes Skill as json.

pub fn skills_create(
  display_name display_name: String,
) -> slackline.Call(SkillsCreate, SkillsCreateResponse)

slackbot.skills.create: Creates a skill from markdown instructions, or turns an existing canvas the caller owns into a skill.

slackbot.SkillsCreate identifies this method in slackline.Call.

Set optional arguments with the functions in slackline/api/slackbot/skills_create.

Bot token scopes: skills:write. User token scopes: skills:write.

Rate limit tier: t2.

Documented errors: already_a_skill, canvas_creation_failed, canvas_disabled_user_team, canvas_editing_locked, canvas_not_found, description_too_long, display_name_too_long, example_prompt_too_long, feature_not_enabled, free_teams_cannot_create_standalone_canvases, instructions_too_large, invalid_category, is_a_template, mcp_server_not_found, not_canvas_owner, restricted_action, too_many_mcp_servers.

pub fn skills_create_response_decoder() -> decode.Decoder(
  SkillsCreateResponse,
)

Decodes the response from slackbot.skills.create.

pub fn skills_delete(
  skill_id skill_id: String,
) -> slackline.Call(SkillsDelete, Nil)

slackbot.skills.delete: Deletes a Slackbot skill and its canvas, and removes it from every library, skill set, and the org catalog.

slackbot.SkillsDelete identifies this method in slackline.Call.

Bot token scopes: skills:write. User token scopes: skills:write.

Rate limit tier: t2.

Documented errors: canvas_deleting_disabled, feature_not_enabled, method_not_supported_for_skill_type, restricted_action, skill_not_found.

pub fn skills_info(
  skill_id skill_id: String,
) -> slackline.Call(SkillsInfo, SkillsInfoResponse)

slackbot.skills.info: Returns one Slackbot skill, including its instructions.

slackbot.SkillsInfo identifies this method in slackline.Call.

Bot token scopes: skills:read. User token scopes: skills:read.

Rate limit tier: t3.

Documented errors: feature_not_enabled, restricted_action, skill_not_found.

pub fn skills_info_response_decoder() -> decode.Decoder(
  SkillsInfoResponse,
)

Decodes the response from slackbot.skills.info.

pub fn skills_library_add(
  skill_id skill_id: String,
) -> slackline.Call(SkillsLibraryAdd, Nil)

slackbot.skills.library.add: Turns a skill on in the caller’s Slackbot library.

slackbot.SkillsLibraryAdd identifies this method in slackline.Call.

Bot token scopes: skills:write. User token scopes: skills:write.

Rate limit tier: t3.

Documented errors: feature_not_enabled, restricted_action, skill_not_found.

pub fn skills_library_remove(
  skill_id skill_id: String,
) -> slackline.Call(SkillsLibraryRemove, Nil)

slackbot.skills.library.remove: Turns a skill off in the caller’s Slackbot library.

slackbot.SkillsLibraryRemove identifies this method in slackline.Call.

Bot token scopes: skills:write. User token scopes: skills:write.

Rate limit tier: t3.

Documented errors: feature_not_enabled, restricted_action, skill_not_found.

pub fn skills_list() -> slackline.Call(
  SkillsList,
  SkillsListResponse,
)

slackbot.skills.list: Lists Slackbot skills from the caller’s point of view. Instructions are not included.

slackbot.SkillsList identifies this method in slackline.Call.

Set optional arguments with the functions in slackline/api/slackbot/skills_list.

Bot token scopes: skills:read. User token scopes: skills:read.

Rate limit tier: t3.

Documented errors: feature_not_enabled, invalid_category, invalid_cursor, restricted_action.

pub fn skills_list_response_decoder() -> decode.Decoder(
  SkillsListResponse,
)

Decodes the response from slackbot.skills.list.

pub fn skills_update(
  skill_id skill_id: String,
) -> slackline.Call(SkillsUpdate, SkillsUpdateResponse)

slackbot.skills.update: Changes a Slackbot skill’s instructions or metadata.

slackbot.SkillsUpdate identifies this method in slackline.Call.

Set optional arguments with the functions in slackline/api/slackbot/skills_update.

Bot token scopes: skills:write. User token scopes: skills:write.

Rate limit tier: t3.

Documented errors: canvas_editing_failed, canvas_editing_locked, description_too_long, display_name_too_long, example_prompt_too_long, feature_not_enabled, instructions_too_large, invalid_category, mcp_server_not_found, method_not_supported_for_skill_type, restricted_action, skill_not_found, too_many_mcp_servers.

pub fn skills_update_response_decoder() -> decode.Decoder(
  SkillsUpdateResponse,
)

Decodes the response from slackbot.skills.update.

✨ Search Document