User Directory API
  • Introduction
  • How to use the app
    • API
    • Examples with curl
  • Use cases
    • Employee onboarding
    • Web signup flow
  • Links
    • Marketplace
    • Support
Powered by GitBook
On this page
  • Authentication
  • List directories
  • Sync a directory
  • List users in a specific directory

Was this helpful?

  1. How to use the app

API

Documents the REST API for the User Directory API app

Authentication

You should authenticate as a user with administrator credentials. To use Basic Authentication with the API, send the username and password associated with the account.

For example, if you’re accessing the API via cURL, the following command would authenticate you if you replace 'admin' with your username. cURL will prompt you to enter the password.

curl -u admin https://localhost:2990/jira/rest/nl-avisi-sync-add-on/1.0/directories

For simplicity sake, we will not repeat the authentication for the resources below.

List directories

GET https://localhost:2990/jira/rest/nl-avisi-sync-add-on/1.0/directories/

This endpoint lists all the directories that are available in the host product. Note that not all directories are syncable, for example the internal directory. This is indicated by the attribute synchronisable.

[
  {
    "id": 1,
    "name": "JIRA Internal Directory",
    "type": "INTERNAL",
    "description": "JIRA default internal directory",
    "synchronisable": false
  }
]

Sync a directory

POST https://localhost:2990/jira/rest/nl-avisi-sync-add-on/1.0/directories/:id/actions/sync?blocking=false

Request a directory to start syncing immediately.

Path Parameters

Name
Type
Description

:id

integer

The identifier of the directory to sync

Query Parameters

Name
Type
Description

blocking

boolean

True if you want the call to be synchronous (that is: you want to wait for the synchronisation to finish). False if you want th e call to be asynchronous (that is: you want the sync to start, but not wait for it to finish.), your call will return immediately.

{
  "message": "synchronisation started in the background"
}

OR when blocking is true:

{
  "message": "synchronisation finish"
}
{
  "message": "directory is not syncable"
}
{
  "message": "directory is currently syncing"
}

List users in a specific directory

GET https://localhost:2990/jira/rest/nl-avisi-sync-add-on/1.0/directories/:id/users

Lists the users in a specific directory. A maximum of 100 users is returned. If there are more users, the response will contain a key named 'next', the value is a url that points to the next 'page' of results. A cursor value denotes the position in the list of users where the current call left off.

Path Parameters

Name
Type
Description

:id

integer

The identifier of the directory

Query Parameters

Name
Type
Description

limit

string

Limits the number of users returned to a number smaller than the default of 100.

cursor

integer

A cursor that defines the starting point in the user list. It is used for paging through the list of users. The cursor is retrieved from the response of the previous call to this endpoint.

{
  "next": "http://localhost:2990/jira/rest/nl-avisi-sync-add-on/1.0/directories/10000/users?cursor=eyJzdGFydCI6Mn0%3D",
  "items": [
    {
      "name": "gerstree",
      "displayName": "Gert-Jan van de Streek"
    },
    {
      "name": "fatdemir",
      "displayName": "Fatih Demir"
    }
  ]
}
PreviousIntroductionNextExamples with curl

Last updated 5 years ago

Was this helpful?

Bitbucket Server doesn’t like synchronous calls. See and .

BSERV-7073
BSERV-7070