Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

About

The API enables you to interact with Skills for Jira programmatically. Use this API to migrate data to/from external systems, implement automation around skills (e.g. add a skill to Assignee upon task completion) or develop any other type of integration.

This page documents the available API endpoints Cloud, including the HTTP response codes and example requests and responses.

Accessing the API

Because Currently, Skills for Jira is powered by Atlassian Forge its API endpoints inherit all characteristics of Forge Web Triggers. This means that API Endpoint URLs are specific for each Jira instance.

You can access URLs of your instance’s API endpoints in the “Users” section of Skills for Jira - Administration console.

...

exposes APIs for:

  • Skill Tree management (see API documentation)

  • User Skills management (see API documentation)

Info

Skills for Jira API uses Bearer Authentication using a custom Authorization-Skills header. You can generate or re-generate your Bearer token at any time in your Skills for Jira - Administration Console.

Endpoints

Get user skills

Returns all skills of the specified user.

  • HTTP Method: GET

  • Request:

    • accountId (query) The account ID of the user. Required

  • Response [JSON]:

    • skills: An array of all skill names that the user has expertise in

Example:

  • Request:

    Code Block
    HTTP GET: https://atlassian-dev.net/x1/get-user-skills?accountId=3e63957f-c263-41cd-acda-748560232d49
  • Response (200):

    Code Block
    {
      "skills":["Engineering - Beginner","JavaScript", "HTML/CSS"]
    }

Add user skills

Adds one or more of skills to the specified user.

  • HTTP Method: PUT

  • Request:

    • accountId (query) The account ID of the user. Required

    • skills (body): An array of skills to add. Required

  • Response [JSON]:

    • added: An array of skills that were successfully added

    • existing: An array of skills that the user already had

Example:

  • Request:

    Code Block
    HTTP PUT: https://{your-generated-endpoint-url}?accountId=3e63957f-c263-41cd-acda-748560232d49
    {
      "skills":["Engineering - Beginner","JavaScript", "HTML/CSS"]
    }
  • Response (200):

    Code Block
    {
      "added":["HTML/CSS"],
      "existing":["Engineering - Beginner","JavaScript"]
    }

Remove user skills

Removes one or more skills from the specified user.

  • HTTP Method: DELETE

  • Request:

    • accountId (query) The account ID of the user. Required

    • skills (body): An array of skills to remove. Required

  • Response [JSON]:

    • removed: An array of user’s skills that were successfully deleted

    • missing: An array of skills that the user did not possess

Example:

  • Request:

    Code Block
    HTTP DELETE: https://{your-generated-endpoint-url}?accountId=3e63957f-c263-41cd-acda-748560232d49
    {
      "skills":["HTML/CSS", "Product Discovery"]
    }
  • Response (200):

    Code Block
    {
      "removed":["HTML/CSS"],
      "missing":["Product Discovery"]
    }

Get all users' skills

Returns the mapping of all experts and their skills in your Jira instance

  • HTTP Method: GET

  • Request: None

  • Response [JSON]:

    • skillsByAccountId: users / skills mapping

Example:

  • Request:

    Code Block
    HTTP GET: https://{your-generated-endpoint-url}
  • Response (200):

    Code Block
    {
      "skillsByAccountId": {
        "3e63957f-c263-41cd-acda-748560232d49": [ "Engineering - Beginner", "JavaScript", "HTML/CSS" ],
        "63314adf8b75455be455c8a0": [ "Marketing - Competent", "Marketing - Expert", "English - Expert", "Social Media Marketing"],
        "61a4ad9cf241500072f37d74": [ "QA - Competent", "Test Automation", "Selenium", "Python" ]
      }
    }

Bulk update users skills

Updates skill sets of multiple users at once

  • HTTP Method: POST

  • Request:

    • skillsByAccountId: users / skills mapping

  • Response [JSON]:\

    • changes: all user skill changes after the import is processed

Example:

  • Request:

    Code Block
    HTTP POST: https://{your-generated-endpoint-url}
    {
      "skillsByAccountId": {
        "3e63957f-c263-41cd-acda-748560232d49": [ "Engineering - Beginner" ],
        "63314adf8b75455be455c8a0": [ "Marketing - Expert", "Marketing - Master", "English - Expert", "Social Media Marketing"],
      }
    }
  • Response (200):

    Code Block
    {
      "changes": {
        "3e63957f-c263-41cd-acda-748560232d49": {
          "added": [],
          "removed": [ "JavaScript", "HTML/CSS" ]
        },
        "63314adf8b75455be455c8a0": {
          "added": [ "Marketing - Master" ],
          "removed": [ "Marketing - Competent" ]
        }
      }
    }

Get skill tree with experts

Returns the complete skill tree with a list of experts specified for each skill

  • HTTP Method: GET

  • Request: None

  • Response [JSON]:

    • experts: skill tree with a list of experts specified for each skill

Example:

...

Request:

Code Block
HTTP GET: https://{your-generated-endpoint-url}

Response (200):

...

Note: The same bearer token is used to access all Skills for Jira APIs.

Accessing the API

Because Skills for Jira is powered by Atlassian Forge its API endpoints inherit all characteristics of Forge Web Triggers. This means that API Endpoint URLs are specific for each Jira instance.

You can access URLs of your instance’s API endpoints in Skills for Jira - Administration console:

  • Skill Tree management API endpoint URLs are accessible in the “Skills” section of the console

  • Image Added

    Users Skill management API endpoint URLs are accessible in the “Users” section of the console

...