# Itsyouonline API documentation version 0.1

https://itsyou.online/api

### /users

#### /users post

post

Create a new user

#### post /users

Create a new user

Secured by oauth_2_0

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### Body

Media type: application/json

Type: object

Properties

- username: required (string - minLength: 2 - maxLength: 30 - pattern: ^[a-z0-9]{2,30}$)
- firstname: required (string)
- lastname: required (string)
- publicKeys: required (array of )
- expire: (datetime)
- digitalwallet: required (array of DigitalAssetAddress)

  Items: DigitalAssetAddress

  - address: required (string)
  - label: required (string - minLength: 2 - maxLength: 50 - pattern: ^[a-zA-Z\d\-_\s]{2,50}$)
  - expire: required (datetime)
  - currencysymbol: required (string)
  - noexpiration: (boolean)

    Flag that represents whether or not this digital asset expires. If true, the expire field can be ignored.

- emailaddresses: required (array of EmailAddress)

  Items: EmailAddress

  - label: required (string - minLength: 2 - maxLength: 50 - pattern: ^[a-zA-Z\d\-_\s]{2,50}$)
  - emailaddress: required (string)
- phonenumbers: required (array of Phonenumber)

  Items: Phonenumber

  - phonenumber: required (string - pattern: \+[0-9]{6,50}$)
  - label: required (string - minLength: 2 - maxLength: 50 - pattern: ^[a-zA-Z\d\-_\s]{2,50}$)
- addresses: required (array of Address)

  Items: Address

  - city: required (string - maxLength: 30)
  - street: required (string - maxLength: 50)
  - nr: required (string - maxLength: 10)
  - other: (string - maxLength: 30)
  - country: required (string - maxLength: 40)
  - postalcode: required (string - maxLength: 20)
  - label: required (string - minLength: 2 - maxLength: 50 - pattern: ^[a-zA-Z\d\-_\s]{2,50}$)
- bankaccounts: required (array of BankAccount)

  Items: BankAccount

  - iban: required (string - maxLength: 30)
  - bic: required (string - maxLength: 11)
  - country: required (string - maxLength: 40)
  - label: required (string - minLength: 2 - maxLength: 50 - pattern: ^[a-zA-Z\d\-_\s]{2,50}$)
- facebook: (object)
  - id: required (integer)
  - name: required (string)
  - picture: required (string)
  - link: required (string)
- github: (object)
  - login: required (string)
  - id: required (integer)
  - avatar_url: required (string)
  - html_url: required (string)
  - name: required (string)

Example:

    {
      "username": "bob",
      "firstname": "Bob",
      "lastname": "Johnson",
      "publicKeys": [
        "1GVS7544tvWM2TM13vNH8sboamJzL6mJ36"
      ],
      "expire": "2018-10-20T16:41:41.090Z",
      "emailaddresses": [
        {
          "label": "work",
          "emailaddress": "bob@company.com"
        },
        {
          "label": "home",
          "emailaddress": "bob@example.com"
        }
      ],
      "digitalwallet": [
        {
          "label": "bibcoin",
          "address": "fdfgfgergerger",
          "expire": "2018-10-20T16:41:41.090Z",
          "currencysymbol": "bb"
        }
      ],
      "phonenumbers": [
        {
          "label": "be",
          "phonenumber": "+3212341234123"
        },
        {
          "label": "eg",
          "phonenumber": "+2012341234123"
        }
      ],
      "addresses": [
        {
          "label": "home",
          "city": "Springfield",
          "street": "Main street",
          "nr": "45B",
          "country": "Tomorrowland",
          "postalcode": "T-9450"
        },
        {
          "label": "work",
          "city": "Capital City",
          "street": "Capital street",
          "nr": "1",
          "country": "Tomorrowland",
          "postalcode": "T-1000"
        }
      ],
      "bankaccounts": [
        {
          "label": "kbc",
          "iban": "TL123451234512345",
          "bic": "ABCDEFGH",
          "country": "Tomorrowland"
        }
      ]
    }

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### /users/avatar/img/{hash} get

get

Get the avatar file associated with this id

#### get /users/avatar/img/{hash}

Get the avatar file associated with this id

Secured by oauth_2_0

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- hash: required (string)

## HTTP status code 200

### Body

Media type: image/*

Type: file

## HTTP status code 404

No avatar file associated with this hash

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### /users/{username} get

get

#### get /users/{username}

Secured by oauth_2_0 with scopes:

- user:admin

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- username: required (string)

## HTTP status code 200

### Body

Media type: application/json

Type: object

Properties

- username: required (string - minLength: 2 - maxLength: 30 - pattern: ^[a-z0-9]{2,30}$)
- firstname: required (string)
- lastname: required (string)
- publicKeys: required (array of )
- expire: (datetime)
- digitalwallet: required (array of DigitalAssetAddress)

  Items: DigitalAssetAddress

  - address: required (string)
  - label: required (string - minLength: 2 - maxLength: 50 - pattern: ^[a-zA-Z\d\-_\s]{2,50}$)
  - expire: required (datetime)
  - currencysymbol: required (string)
  - noexpiration: (boolean)

    Flag that represents whether or not this digital asset expires. If true, the expire field can be ignored.

- emailaddresses: required (array of EmailAddress)

  Items: EmailAddress

  - label: required (string - minLength: 2 - maxLength: 50 - pattern: ^[a-zA-Z\d\-_\s]{2,50}$)
  - emailaddress: required (string)
- phonenumbers: required (array of Phonenumber)

  Items: Phonenumber

  - phonenumber: required (string - pattern: \+[0-9]{6,50}$)
  - label: required (string - minLength: 2 - maxLength: 50 - pattern: ^[a-zA-Z\d\-_\s]{2,50}$)
- addresses: required (array of Address)

  Items: Address

  - city: required (string - maxLength: 30)
  - street: required (string - maxLength: 50)
  - nr: required (string - maxLength: 10)
  - other: (string - maxLength: 30)
  - country: required (string - maxLength: 40)
  - postalcode: required (string - maxLength: 20)
  - label: required (string - minLength: 2 - maxLength: 50 - pattern: ^[a-zA-Z\d\-_\s]{2,50}$)
- bankaccounts: required (array of BankAccount)

  Items: BankAccount

  - iban: required (string - maxLength: 30)
  - bic: required (string - maxLength: 11)
  - country: required (string - maxLength: 40)
  - label: required (string - minLength: 2 - maxLength: 50 - pattern: ^[a-zA-Z\d\-_\s]{2,50}$)
- facebook: (object)
  - id: required (integer)
  - name: required (string)
  - picture: required (string)
  - link: required (string)
- github: (object)
  - login: required (string)
  - id: required (integer)
  - avatar_url: required (string)
  - html_url: required (string)
  - name: required (string)

Example:

    {
      "username": "bob",
      "firstname": "Bob",
      "lastname": "Johnson",
      "publicKeys": [
        "1GVS7544tvWM2TM13vNH8sboamJzL6mJ36"
      ],
      "expire": "2018-10-20T16:41:41.090Z",
      "emailaddresses": [
        {
          "label": "work",
          "emailaddress": "bob@company.com"
        },
        {
          "label": "home",
          "emailaddress": "bob@example.com"
        }
      ],
      "digitalwallet": [
        {
          "label": "bibcoin",
          "address": "fdfgfgergerger",
          "expire": "2018-10-20T16:41:41.090Z",
          "currencysymbol": "bb"
        }
      ],
      "phonenumbers": [
        {
          "label": "be",
          "phonenumber": "+3212341234123"
        },
        {
          "label": "eg",
          "phonenumber": "+2012341234123"
        }
      ],
      "addresses": [
        {
          "label": "home",
          "city": "Springfield",
          "street": "Main street",
          "nr": "45B",
          "country": "Tomorrowland",
          "postalcode": "T-9450"
        },
        {
          "label": "work",
          "city": "Capital City",
          "street": "Capital street",
          "nr": "1",
          "country": "Tomorrowland",
          "postalcode": "T-1000"
        }
      ],
      "bankaccounts": [
        {
          "label": "kbc",
          "iban": "TL123451234512345",
          "bic": "ABCDEFGH",
          "country": "Tomorrowland"
        }
      ]
    }

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### /users/{username}/name put

put

Update the user his firstname and lastname

#### put /users/{username}/name

Update the user his firstname and lastname

Secured by oauth_2_0 with scopes:

- user:admin

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- username: required (string)

### Body

Media type: application/json

Type: object

Properties

- firstname: required (string)
- lastname: required (string)

## HTTP status code 204

Successfully updated firstname and lastname

## HTTP status code 404

User not found

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### /users/{username}/password put

put

Update the user his password

#### put /users/{username}/password

Update the user his password

Secured by oauth_2_0 with scopes:

- user:admin

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- username: required (string)

### Body

Media type: application/json

Type: object

Properties

- currentpassword: required (string)
- newpassword: required (string)

## HTTP status code 204

Password successfully updated

## HTTP status code 422

Invalid password format or invallid currentpassword

### Body

Media type: application/json

Type: object

Properties

- error: required (string)

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### /users/{username}/emailaddresses get post

get

Get a list of the user his email addresses.

post

Register a new email address

#### get /users/{username}/emailaddresses

Get a list of the user his email addresses.

Secured by oauth_2_0 with scopes:

- user:admin

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- username: required (string)

### Query Parameters

- validated: (boolean)

  optional parameter to filter on only validated email addressses

## HTTP status code 200

### Body

Media type: application/json

Type: array of EmailAddress

Items: EmailAddress

- label: required (string - minLength: 2 - maxLength: 50 - pattern: ^[a-zA-Z\d\-_\s]{2,50}$)
- emailaddress: required (string)

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### post /users/{username}/emailaddresses

Register a new email address

Secured by oauth_2_0 with scopes:

- user:admin

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- username: required (string)

### Query Parameters

- lang: required (string)

  language that the validation email should be in.

### Body

Media type: application/json

Type: object

Properties

- label: required (string - minLength: 2 - maxLength: 50 - pattern: ^[a-zA-Z\d\-_\s]{2,50}$)
- emailaddress: required (string)

## HTTP status code 201

Registered a new email address

### Body

Media type: application/json

Type: object

Properties

- label: required (string - minLength: 2 - maxLength: 50 - pattern: ^[a-zA-Z\d\-_\s]{2,50}$)
- emailaddress: required (string)

## HTTP status code 409

Label is already used.

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### /users/{username}/emailaddresses/{label} put delete

put

Updates the label and/or value of an email address

delete

Removes an email address

#### put /users/{username}/emailaddresses/{label}

Updates the label and/or value of an email address

Secured by oauth_2_0

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- username: required (string)
- label: required (string)

### Query Parameters

- lang: required (string)

  language that the validation email should be in.

### Body

Media type: application/json

Type: object

Properties

- label: required (string - minLength: 2 - maxLength: 50 - pattern: ^[a-zA-Z\d\-_\s]{2,50}$)
- emailaddress: required (string)

## HTTP status code 201

Updated

## HTTP status code 409

The new label is already used

## HTTP status code 412

Email address is validated and can not be changed, only deleted

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### delete /users/{username}/emailaddresses/{label}

Removes an email address

Secured by oauth_2_0

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- username: required (string)
- label: required (string)

## HTTP status code 204

Email address removed.

## HTTP status code 409

The last email address can not be removed.

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### /users/{username}/emailaddresses/{label}/validate post

post

Sends validation email to email address

#### post /users/{username}/emailaddresses/{label}/validate

Sends validation email to email address

Secured by oauth_2_0

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- username: required (string)
- label: required (string)

### Query Parameters

- lang: required (string)

  language that the validation email should be in.

## HTTP status code 204

Validation email has been send

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### /users/{username}/apikeys post get

post

Adds an APIKey to the user

get

Lists the API keys

#### post /users/{username}/apikeys

Adds an APIKey to the user

Secured by oauth_2_0 with scopes:

- user:admin

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- username: required (string)

### Body

Media type: application/json

Type: object

Properties

- label: required (string - minLength: 2 - maxLength: 50 - pattern: ^[a-zA-Z\d\-_\s]{2,50}$)

## HTTP status code 201

Added a APIKey to the user

### Body

Media type: application/json

Type: object

Properties

- username: required (string)
- apikey: required (string)
- applicationid: required (string)
- scopes: required (array of )
- label: required (string - minLength: 2 - maxLength: 50 - pattern: ^[a-zA-Z\d\-_\s]{2,50}$)

## HTTP status code 409

Label is already used.

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### get /users/{username}/apikeys

Lists the API keys

Secured by oauth_2_0 with scopes:

- user:admin

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- username: required (string)

## HTTP status code 200

List of API keys

### Body

Media type: application/json

Type: array of UserAPIKey

Items: UserAPIKey

- username: required (string)
- apikey: required (string)
- applicationid: required (string)
- scopes: required (array of )
- label: required (string - minLength: 2 - maxLength: 50 - pattern: ^[a-zA-Z\d\-_\s]{2,50}$)

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### /users/{username}/apikeys/{label} put get delete

put

Updates the label for the API key

get

Get an API key by label

delete

Removes an API key

#### put /users/{username}/apikeys/{label}

Updates the label for the API key

Secured by oauth_2_0

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- username: required (string)
- label: required (string)

### Body

Media type: application/json

Type: object

Properties

- label: required (string - minLength: 2 - maxLength: 50 - pattern: ^[a-zA-Z\d\-_\s]{2,50}$)

## HTTP status code 204

API key updated

## HTTP status code 409

The new label is already used

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### get /users/{username}/apikeys/{label}

Get an API key by label

Secured by oauth_2_0

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- username: required (string)
- label: required (string)

## HTTP status code 200

API key

### Body

Media type: application/json

Type: object

Properties

- username: required (string)
- apikey: required (string)
- applicationid: required (string)
- scopes: required (array of )
- label: required (string - minLength: 2 - maxLength: 50 - pattern: ^[a-zA-Z\d\-_\s]{2,50}$)

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### delete /users/{username}/apikeys/{label}

Removes an API key

Secured by oauth_2_0

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- username: required (string)
- label: required (string)

## HTTP status code 204

API key removed.

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### /users/{username}/avatar get post

get

List all avatars for the user

post

Create a new avatar with the specified label from a link

#### get /users/{username}/avatar

List all avatars for the user

Secured by oauth_2_0 with scopes:

- user:admin

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- username: required (string)

## HTTP status code 200

List of the avatars

### Body

Media type: application/json

Type: object

Properties

- label: required (string - minLength: 2 - maxLength: 50 - pattern: ^[a-zA-Z\d\-_\s]{2,50}$)
- source: required (string)

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### post /users/{username}/avatar

Create a new avatar with the specified label from a link

Secured by oauth_2_0 with scopes:

- user:admin

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- username: required (string)

### Body

Media type: application/json

Type: object

Properties

- label: required (string - minLength: 2 - maxLength: 50 - pattern: ^[a-zA-Z\d\-_\s]{2,50}$)
- source: required (string)

## HTTP status code 201

New avatar created

### Body

Media type: application/json

Type: object

Properties

- label: required (string - minLength: 2 - maxLength: 50 - pattern: ^[a-zA-Z\d\-_\s]{2,50}$)
- source: required (string)

## HTTP status code 409

Create request rejected

### Body

Media type: application/json

Type: object

Properties

- error: required (string)

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### /users/{username}/avatar/img/{label} post

post

Create a new avatar with the specified label from a provided image file

#### post /users/{username}/avatar/img/{label}

Create a new avatar with the specified label from a provided image file

Secured by oauth_2_0 with scopes:

- user:admin

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- username: required (string)
- label: required (string)

### Body

Media type: multipart/form-data

Type: file

## HTTP status code 201

New avatar created

### Body

Media type: application/json

Type: object

Properties

- label: required (string - minLength: 2 - maxLength: 50 - pattern: ^[a-zA-Z\d\-_\s]{2,50}$)
- source: required (string)

## HTTP status code 409

Create request rejected

### Body

Media type: application/json

Type: object

Properties

- error: required (string)

## HTTP status code 413

Uploaded file is too large

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### /users/{username}/avatar/{label} put delete

put

Update the avatar and possibly the link to the avatar

delete

Delete the avatar with the specified label

#### put /users/{username}/avatar/{label}

Update the avatar and possibly the link to the avatar

Secured by oauth_2_0 with scopes:

- user:admin

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- username: required (string)
- label: required (string)

### Body

Media type: application/json

Type: object

Properties

- label: required (string - minLength: 2 - maxLength: 50 - pattern: ^[a-zA-Z\d\-_\s]{2,50}$)
- source: required (string)

## HTTP status code 200

Avatar updated successfully

### Body

Media type: application/json

Type: object

Properties

- label: required (string - minLength: 2 - maxLength: 50 - pattern: ^[a-zA-Z\d\-_\s]{2,50}$)
- source: required (string)

## HTTP status code 404

Avatar not found

## HTTP status code 409

Avatar update rejected

### Body

Media type: application/json

Type: object

Properties

- error: required (string)

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### delete /users/{username}/avatar/{label}

Delete the avatar with the specified label

Secured by oauth_2_0 with scopes:

- user:admin

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- username: required (string)
- label: required (string)

## HTTP status code 204

Avatar deleted

## HTTP status code 404

Avatar not found

## HTTP status code 409

Trying to delete a protected avatar

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### /users/{username}/avatar/{label}/to/{newlabel} put

put

Update the avatar and possibly the avatar file stored on itsyou.online

#### put /users/{username}/avatar/{label}/to/{newlabel}

Update the avatar and possibly the avatar file stored on itsyou.online

Secured by oauth_2_0 with scopes:

- user:admin

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- username: required (string)
- label: required (string)
- newlabel: required (string)

### Body

Media type: multipart/form-data

Type: file

## HTTP status code 200

Updated avatar

### Body

Media type: application/json

Type: object

Properties

- label: required (string - minLength: 2 - maxLength: 50 - pattern: ^[a-zA-Z\d\-_\s]{2,50}$)
- source: required (string)

## HTTP status code 404

Avatar not found

## HTTP status code 409

Avatar update rejected

### Body

Media type: application/json

Type: object

Properties

- error: required (string)

## HTTP status code 413

Uploaded file is too large

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### /users/{username}/registry post get

post

Adds a RegistryEntry to the user's registry, if the key is already used, it is overwritten.

get

Lists the Registry entries

#### post /users/{username}/registry

Adds a RegistryEntry to the user's registry, if the key is already used, it is overwritten.

Secured by oauth_2_0 with scopes:

- user:admin

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- username: required (string)

### Body

Media type: application/json

Type: object

Properties

- Key: required (string - minLength: 1 - maxLength: 256)
- Value: required (string - maxLength: 1024)

## HTTP status code 201

Added the RegistryEntry to the user's registry

### Body

Media type: application/json

Type: object

Properties

- Key: required (string - minLength: 1 - maxLength: 256)
- Value: required (string - maxLength: 1024)

## HTTP status code 409

Label is already used.

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### get /users/{username}/registry

Lists the Registry entries

Secured by oauth_2_0 with scopes:

- user:admin

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- username: required (string)

## HTTP status code 200

List of Registry entries

### Body

Media type: application/json

Type: array of RegistryEntry

Items: RegistryEntry

- Key: required (string - minLength: 1 - maxLength: 256)
- Value: required (string - maxLength: 1024)

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### /users/{username}/registry/{key} delete get

delete

Removes a RegistryEntry from the user's registry

get

Get a RegistryEntry from the user's registry.

#### delete /users/{username}/registry/{key}

Removes a RegistryEntry from the user's registry

Secured by oauth_2_0

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- username: required (string)
- key: required (string)

## HTTP status code 204

RegistryEntry removed.

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### get /users/{username}/registry/{key}

Get a RegistryEntry from the user's registry.

Secured by oauth_2_0

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- username: required (string)
- key: required (string)

## HTTP status code 200

Registry Entry

### Body

Media type: application/json

Type: object

Properties

- Key: required (string - minLength: 1 - maxLength: 256)
- Value: required (string - maxLength: 1024)

## HTTP status code 404

Not found

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### /users/{username}/github delete

delete

Unlink Github Account

#### delete /users/{username}/github

Unlink Github Account

Secured by oauth_2_0 with scopes:

- user:admin

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- username: required (string)

## HTTP status code 204

Account unlinked

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### /users/{username}/facebook delete

delete

Delete the associated facebook account

#### delete /users/{username}/facebook

Delete the associated facebook account

Secured by oauth_2_0 with scopes:

- user:admin

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- username: required (string)

## HTTP status code 204

Deleted facebook account

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### /users/{username}/twofamethods get

get

Get the possible two-factor authentication methods"

#### get /users/{username}/twofamethods

Get the possible two-factor authentication methods"

Secured by oauth_2_0 with scopes:

- user:admin

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- username: required (string)

## HTTP status code 200

### Body

Media type: application/json

Type: object

Properties

- totp: required (boolean)
- sms: required (array of Phonenumber)

  Items: Phonenumber

  - phonenumber: required (string - pattern: \+[0-9]{6,50}$)
  - label: required (string - minLength: 2 - maxLength: 50 - pattern: ^[a-zA-Z\d\-_\s]{2,50}$)

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### /users/{username}/totp get post delete

get

Get a TOTP secret and issuer that can be used for setting up two-factor authentication.

post

Enable two-factor authentication using TOTP.

delete

Disable TOTP two-factor authentication.

#### get /users/{username}/totp

Get a TOTP secret and issuer that can be used for setting up two-factor authentication.

Secured by oauth_2_0 with scopes:

- user:admin

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- username: required (string)

## HTTP status code 200

### Body

Media type: application/json

Type: object

Properties

- totpcode: required (string)

  This is a code that is generated by an authenticator application (e.g. Google Authenticator)

- totpsecret: required (string)

  The totp secret

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### post /users/{username}/totp

Enable two-factor authentication using TOTP.

Secured by oauth_2_0 with scopes:

- user:admin

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- username: required (string)

### Body

Media type: application/json

Type: object

Properties

- totpcode: required (string)

  This is a code that is generated by an authenticator application (e.g. Google Authenticator)

- totpsecret: required (string)

  The totp secret

## HTTP status code 204

TOTP setup successfully

## HTTP status code 422

Invalid totpcode

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### delete /users/{username}/totp

Disable TOTP two-factor authentication.

Secured by oauth_2_0 with scopes:

- user:admin

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- username: required (string)

## HTTP status code 204

TOTP successfully removed

## HTTP status code 409

Cannot remove TOTP authentication because this is the last available login method

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### /users/{username}/info get

get

Get all of the user his information. This will be limited to the scopes that the user has authorized. See https://gig.gitbooks.io/itsyouonline/content/oauth2/scopes.html and https://gig.gitbooks.io/itsyouonline/content/oauth2/availableScopes.html for more information.

#### get /users/{username}/info

Get all of the user his information. This will be limited to the scopes that the user has authorized. See https://gig.gitbooks.io/itsyouonline/content/oauth2/scopes.html and https://gig.gitbooks.io/itsyouonline/content/oauth2/availableScopes.html for more information.

Secured by oauth_2_0 with scopes:

- user:info
- user:admin

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- username: required (string)

## HTTP status code 200

### Body

Media type: application/json

Type: object

Properties

- username: required (string)
- publicKeys: (array of PublicKey)

  Items: PublicKey

  - label: required (string - minLength: 2 - maxLength: 50 - pattern: ^[a-zA-Z\d\-_\s]{2,50}$)
  - publickey: required (string)
- emailaddresses: required (array of EmailAddress)

  Items: EmailAddress

  - label: required (string - minLength: 2 - maxLength: 50 - pattern: ^[a-zA-Z\d\-_\s]{2,50}$)
  - emailaddress: required (string)
- validatedemailaddresses: required (array of EmailAddress)

  Items: EmailAddress

  - label: required (string - minLength: 2 - maxLength: 50 - pattern: ^[a-zA-Z\d\-_\s]{2,50}$)
  - emailaddress: required (string)
- phonenumbers: required (array of Phonenumber)

  Items: Phonenumber

  - phonenumber: required (string - pattern: \+[0-9]{6,50}$)
  - label: required (string - minLength: 2 - maxLength: 50 - pattern: ^[a-zA-Z\d\-_\s]{2,50}$)
- validatedphonenumbers: required (array of Phonenumber)

  Items: Phonenumber

  - phonenumber: required (string - pattern: \+[0-9]{6,50}$)
  - label: required (string - minLength: 2 - maxLength: 50 - pattern: ^[a-zA-Z\d\-_\s]{2,50}$)
- addresses: required (array of Address)

  Items: Address

  - city: required (string - maxLength: 30)
  - street: required (string - maxLength: 50)
  - nr: required (string - maxLength: 10)
  - other: (string - maxLength: 30)
  - country: required (string - maxLength: 40)
  - postalcode: required (string - maxLength: 20)
  - label: required (string - minLength: 2 - maxLength: 50 - pattern: ^[a-zA-Z\d\-_\s]{2,50}$)
- bankaccounts: required (array of BankAccount)

  Items: BankAccount

  - iban: required (string - maxLength: 30)
  - bic: required (string - maxLength: 11)
  - country: required (string - maxLength: 40)
  - label: required (string - minLength: 2 - maxLength: 50 - pattern: ^[a-zA-Z\d\-_\s]{2,50}$)
- digitalwallet: required (object)
  - address: required (string)
  - label: required (string - minLength: 2 - maxLength: 50 - pattern: ^[a-zA-Z\d\-_\s]{2,50}$)
  - expire: required (datetime)
  - currencysymbol: required (string)
  - noexpiration: (boolean)

    Flag that represents whether or not this digital asset expires. If true, the expire field can be ignored.

- facebook: (object)
  - id: required (integer)
  - name: required (string)
  - picture: required (string)
  - link: required (string)
- github: (object)
  - login: required (string)
  - id: required (integer)
  - avatar_url: required (string)
  - html_url: required (string)
  - name: required (string)
- organizations: required (array of )
- avatar: required (array of Avatar)

  Items: Avatar

  - label: required (string - minLength: 2 - maxLength: 50 - pattern: ^[a-zA-Z\d\-_\s]{2,50}$)
  - source: required (string)
- firstname: required (string)
- lastname: required (string)
- ownerof: required (object)
  - emailaddresses: required (array of EmailAddress)

    Items: EmailAddress

    - label: required (string - minLength: 2 - maxLength: 50 - pattern: ^[a-zA-Z\d\-_\s]{2,50}$)
    - emailaddress: required (string)

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### /users/{username}/addresses get post

get

List of all of the user his addresses.

post

Register a new address

#### get /users/{username}/addresses

List of all of the user his addresses.

Secured by oauth_2_0 with scopes:

- user:admin

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- username: required (string)

## HTTP status code 200

### Body

Media type: application/json

Type: array of Address

Items: Address

- city: required (string - maxLength: 30)
- street: required (string - maxLength: 50)
- nr: required (string - maxLength: 10)
- other: (string - maxLength: 30)
- country: required (string - maxLength: 40)
- postalcode: required (string - maxLength: 20)
- label: required (string - minLength: 2 - maxLength: 50 - pattern: ^[a-zA-Z\d\-_\s]{2,50}$)

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### post /users/{username}/addresses

Register a new address

Secured by oauth_2_0 with scopes:

- user:admin

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- username: required (string)

### Body

Media type: application/json

Type: object

Properties

- city: required (string - maxLength: 30)
- street: required (string - maxLength: 50)
- nr: required (string - maxLength: 10)
- other: (string - maxLength: 30)
- country: required (string - maxLength: 40)
- postalcode: required (string - maxLength: 20)
- label: required (string - minLength: 2 - maxLength: 50 - pattern: ^[a-zA-Z\d\-_\s]{2,50}$)

## HTTP status code 201

Registered a new address

### Body

Media type: application/json

Type: object

Properties

- city: required (string - maxLength: 30)
- street: required (string - maxLength: 50)
- nr: required (string - maxLength: 10)
- other: (string - maxLength: 30)
- country: required (string - maxLength: 40)
- postalcode: required (string - maxLength: 20)
- label: required (string - minLength: 2 - maxLength: 50 - pattern: ^[a-zA-Z\d\-_\s]{2,50}$)

## HTTP status code 409

Label is already used.

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### /users/{username}/addresses/{label} get put delete

get

Get the details of an address.

put

Update the label and/or value of an existing address.

delete

Removes an address

#### get /users/{username}/addresses/{label}

Get the details of an address.

Secured by oauth_2_0

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- username: required (string)
- label: required (string)

## HTTP status code 200

### Body

Media type: application/json

Type: object

Properties

- city: required (string - maxLength: 30)
- street: required (string - maxLength: 50)
- nr: required (string - maxLength: 10)
- other: (string - maxLength: 30)
- country: required (string - maxLength: 40)
- postalcode: required (string - maxLength: 20)
- label: required (string - minLength: 2 - maxLength: 50 - pattern: ^[a-zA-Z\d\-_\s]{2,50}$)

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### put /users/{username}/addresses/{label}

Update the label and/or value of an existing address.

Secured by oauth_2_0

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- username: required (string)
- label: required (string)

### Body

Media type: application/json

Type: object

Properties

- city: required (string - maxLength: 30)
- street: required (string - maxLength: 50)
- nr: required (string - maxLength: 10)
- other: (string - maxLength: 30)
- country: required (string - maxLength: 40)
- postalcode: required (string - maxLength: 20)
- label: required (string - minLength: 2 - maxLength: 50 - pattern: ^[a-zA-Z\d\-_\s]{2,50}$)

## HTTP status code 201

Updated

## HTTP status code 409

The new label is already used

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### delete /users/{username}/addresses/{label}

Removes an address

Secured by oauth_2_0

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- username: required (string)
- label: required (string)

## HTTP status code 204

Address removed.

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### /users/{username}/digitalwallet get post

get

List all of the user his digital wallets.

post

Register a new digital asset address

#### get /users/{username}/digitalwallet

List all of the user his digital wallets.

Secured by oauth_2_0 with scopes:

- user:admin

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- username: required (string)

## HTTP status code 200

### Body

Media type: application/json

Type: array of DigitalAssetAddress

Items: DigitalAssetAddress

- address: required (string)
- label: required (string - minLength: 2 - maxLength: 50 - pattern: ^[a-zA-Z\d\-_\s]{2,50}$)
- expire: required (datetime)
- currencysymbol: required (string)
- noexpiration: (boolean)

  Flag that represents whether or not this digital asset expires. If true, the expire field can be ignored.

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### post /users/{username}/digitalwallet

Register a new digital asset address

Secured by oauth_2_0 with scopes:

- user:admin

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- username: required (string)

### Body

Media type: application/json

Type: object

Properties

- address: required (string)
- label: required (string - minLength: 2 - maxLength: 50 - pattern: ^[a-zA-Z\d\-_\s]{2,50}$)
- expire: required (datetime)
- currencysymbol: required (string)
- noexpiration: (boolean)

  Flag that represents whether or not this digital asset expires. If true, the expire field can be ignored.

## HTTP status code 201

Registered a new address

### Body

Media type: application/json

Type: object

Properties

- address: required (string)
- label: required (string - minLength: 2 - maxLength: 50 - pattern: ^[a-zA-Z\d\-_\s]{2,50}$)
- expire: required (datetime)
- currencysymbol: required (string)
- noexpiration: (boolean)

  Flag that represents whether or not this digital asset expires. If true, the expire field can be ignored.

## HTTP status code 409

Label is already used.

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### /users/{username}/digitalwallet/{label} get put delete

get

Get the details of a digital wallet address.

put

Update the label and/or value of an existing address.

delete

Removes an address

#### get /users/{username}/digitalwallet/{label}

Get the details of a digital wallet address.

Secured by oauth_2_0

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- username: required (string)
- label: required (string)

## HTTP status code 200

### Body

Media type: application/json

Type: object

Properties

- address: required (string)
- label: required (string - minLength: 2 - maxLength: 50 - pattern: ^[a-zA-Z\d\-_\s]{2,50}$)
- expire: required (datetime)
- currencysymbol: required (string)
- noexpiration: (boolean)

  Flag that represents whether or not this digital asset expires. If true, the expire field can be ignored.

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### put /users/{username}/digitalwallet/{label}

Update the label and/or value of an existing address.

Secured by oauth_2_0

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- username: required (string)
- label: required (string)

### Body

Media type: application/json

Type: object

Properties

- address: required (string)
- label: required (string - minLength: 2 - maxLength: 50 - pattern: ^[a-zA-Z\d\-_\s]{2,50}$)
- expire: required (datetime)
- currencysymbol: required (string)
- noexpiration: (boolean)

  Flag that represents whether or not this digital asset expires. If true, the expire field can be ignored.

## HTTP status code 201

Updated

## HTTP status code 409

The new label is already used

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### delete /users/{username}/digitalwallet/{label}

Removes an address

Secured by oauth_2_0

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- username: required (string)
- label: required (string)

## HTTP status code 204

Address removed.

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### /users/{username}/phonenumbers get post

get

List of all of the user his phone numbers.

post

Register a new phonenumber

#### get /users/{username}/phonenumbers

List of all of the user his phone numbers.

Secured by oauth_2_0 with scopes:

- user:admin

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- username: required (string)

### Query Parameters

- validated: required (string)

  optional queryParameter to filter on only validated phonenumbers

## HTTP status code 200

### Body

Media type: application/json

Type: array of Phonenumber

Items: Phonenumber

- phonenumber: required (string - pattern: \+[0-9]{6,50}$)
- label: required (string - minLength: 2 - maxLength: 50 - pattern: ^[a-zA-Z\d\-_\s]{2,50}$)

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### post /users/{username}/phonenumbers

Register a new phonenumber

Secured by oauth_2_0 with scopes:

- user:admin

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- username: required (string)

### Body

Media type: application/json

Type: object

Properties

- phonenumber: required (string - pattern: \+[0-9]{6,50}$)
- label: required (string - minLength: 2 - maxLength: 50 - pattern: ^[a-zA-Z\d\-_\s]{2,50}$)

## HTTP status code 201

Registered a new phone number

### Body

Media type: application/json

Type: object

Properties

- phonenumber: required (string - pattern: \+[0-9]{6,50}$)
- label: required (string - minLength: 2 - maxLength: 50 - pattern: ^[a-zA-Z\d\-_\s]{2,50}$)

## HTTP status code 409

Label is already used.

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### /users/{username}/phonenumbers/{label} get put delete

get

Get the details of a phone number.

put

Update the label and/or value of an existing phonenumber.

delete

Removes a phonenumber

#### get /users/{username}/phonenumbers/{label}

Get the details of a phone number.

Secured by oauth_2_0

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- username: required (string)
- label: required (string)

## HTTP status code 200

### Body

Media type: application/json

Type: object

Properties

- phonenumber: required (string - pattern: \+[0-9]{6,50}$)
- label: required (string - minLength: 2 - maxLength: 50 - pattern: ^[a-zA-Z\d\-_\s]{2,50}$)

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### put /users/{username}/phonenumbers/{label}

Update the label and/or value of an existing phonenumber.

Secured by oauth_2_0

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- username: required (string)
- label: required (string)

### Body

Media type: application/json

Type: object

Properties

- phonenumber: required (string - pattern: \+[0-9]{6,50}$)
- label: required (string - minLength: 2 - maxLength: 50 - pattern: ^[a-zA-Z\d\-_\s]{2,50}$)

## HTTP status code 201

Updated

## HTTP status code 409

The new label is already used

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### delete /users/{username}/phonenumbers/{label}

Removes a phonenumber

Secured by oauth_2_0

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- username: required (string)
- label: required (string)

### Query Parameters

- force: (string)

  Set to `true` to remove this phone number even if its the last verified one, but only if totp has been set up

## HTTP status code 204

Phone number removed.

## HTTP status code 404

Phone number not found

## HTTP status code 409

Phone number not removed because it is the last verified one and the force query parameter hasn't been set

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### /users/{username}/phonenumbers/{label}/validate post put

post

Sends a validation text message to the phone number.

put

Verifies a phone number

#### post /users/{username}/phonenumbers/{label}/validate

Sends a validation text message to the phone number.

Secured by oauth_2_0

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- username: required (string)
- label: required (string)

## HTTP status code 200

Validation number send

### Body

Media type: application/json

Type: object

Properties

- validationkey: required (string)

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### put /users/{username}/phonenumbers/{label}/validate

Verifies a phone number

Secured by oauth_2_0

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- username: required (string)
- label: required (string)

### Body

Media type: application/json

Type: object

Properties

- smscode: required (string)
- validationkey: required (string)

## HTTP status code 204

Phone number verified

## HTTP status code 422

Invalid validationkey or code

### Body

Media type: application/json

Type: object

Properties

- error: required (string)

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### /users/{username}/banks post get

post

Create new bank account

get

List of the user his bank accounts.

#### post /users/{username}/banks

Create new bank account

Secured by oauth_2_0 with scopes:

- user:admin

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- username: required (string)

### Body

Media type: application/json

Type: object

Properties

- iban: required (string - maxLength: 30)
- bic: required (string - maxLength: 11)
- country: required (string - maxLength: 40)
- label: required (string - minLength: 2 - maxLength: 50 - pattern: ^[a-zA-Z\d\-_\s]{2,50}$)

## HTTP status code 201

### Body

Media type: application/json

Type: object

Properties

- iban: required (string - maxLength: 30)
- bic: required (string - maxLength: 11)
- country: required (string - maxLength: 40)
- label: required (string - minLength: 2 - maxLength: 50 - pattern: ^[a-zA-Z\d\-_\s]{2,50}$)

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### get /users/{username}/banks

List of the user his bank accounts.

Secured by oauth_2_0 with scopes:

- user:admin

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- username: required (string)

## HTTP status code 200

### Body

Media type: application/json

Type: array of BankAccount

Items: BankAccount

- iban: required (string - maxLength: 30)
- bic: required (string - maxLength: 11)
- country: required (string - maxLength: 40)
- label: required (string - minLength: 2 - maxLength: 50 - pattern: ^[a-zA-Z\d\-_\s]{2,50}$)

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### /users/{username}/banks/{label} get put delete

get

Get the details of a bank account

put

Update an existing bankaccount and label.

delete

Delete a BankAccount

#### get /users/{username}/banks/{label}

Get the details of a bank account

Secured by oauth_2_0 with scopes:

- user:admin

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- username: required (string)
- label: required (string)

## HTTP status code 200

### Body

Media type: application/json

Type: object

Properties

- iban: required (string - maxLength: 30)
- bic: required (string - maxLength: 11)
- country: required (string - maxLength: 40)
- label: required (string - minLength: 2 - maxLength: 50 - pattern: ^[a-zA-Z\d\-_\s]{2,50}$)

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### put /users/{username}/banks/{label}

Update an existing bankaccount and label.

Secured by oauth_2_0 with scopes:

- user:admin

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- username: required (string)
- label: required (string)

### Body

Media type: application/json

Type: object

Properties

- iban: required (string - maxLength: 30)
- bic: required (string - maxLength: 11)
- country: required (string - maxLength: 40)
- label: required (string - minLength: 2 - maxLength: 50 - pattern: ^[a-zA-Z\d\-_\s]{2,50}$)

## HTTP status code 200

Bank account updated

### Body

Media type: application/json

Type: object

Properties

- iban: required (string - maxLength: 30)
- bic: required (string - maxLength: 11)
- country: required (string - maxLength: 40)
- label: required (string - minLength: 2 - maxLength: 50 - pattern: ^[a-zA-Z\d\-_\s]{2,50}$)

## HTTP status code 404

Bank account not found

## HTTP status code 409

New label already in use

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### delete /users/{username}/banks/{label}

Delete a BankAccount

Secured by oauth_2_0 with scopes:

- user:admin

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- username: required (string)
- label: required (string)

## HTTP status code 204

BankAccount deleted

## HTTP status code 404

BankAccount not found

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### /users/{username}/notifications get

get

Get the list of notifications, these are pending invitations or approvals or other requests.

#### get /users/{username}/notifications

Get the list of notifications, these are pending invitations or approvals or other requests.

Secured by oauth_2_0 with scopes:

- user:admin

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- username: required (string)

## HTTP status code 200

### Body

Media type: application/json

Type: object

Properties

- invitations: required (array of JoinOrganizationInvitation)

  Items: JoinOrganizationInvitation

  - organization: required (string)
  - user: required (string)
  - role: required (one of owner, member, orgowner, orgmember)
  - created: (datetime)
  - status: required (one of pending, accepted, rejected)
  - method: required (one of website, email, phone)
  - emailaddress: required (string)
  - phonenumber: required (string)
  - isorganization: required (boolean)

  Example:

      {
        "organization": "mycoolsoccerclub",
        "user": "bob",
        "role": "owner",
        "created": "2016-02-28T16:41:41.090Z",
        "status": "pending",
        "method": "website",
        "emailaddress": "",
        "phonenumber": "",
        "isorganization": false
      }

- approvals: required (array of JoinOrganizationInvitation)

  Items: JoinOrganizationInvitation

  - organization: required (string)
  - user: required (string)
  - role: required (one of owner, member, orgowner, orgmember)
  - created: (datetime)
  - status: required (one of pending, accepted, rejected)
  - method: required (one of website, email, phone)
  - emailaddress: required (string)
  - phonenumber: required (string)
  - isorganization: required (boolean)

  Example:

      {
        "organization": "mycoolsoccerclub",
        "user": "bob",
        "role": "owner",
        "created": "2016-02-28T16:41:41.090Z",
        "status": "pending",
        "method": "website",
        "emailaddress": "",
        "phonenumber": "",
        "isorganization": false
      }

- contractRequests: required (array of ContractSigningRequest)

  Items: ContractSigningRequest

  - contractId: required (string)
  - party: required (string)
- missingscopes: required (array of MissingScopes)

  Items: MissingScopes

  - organization: required (string)
  - scopes: required (array of )

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### /users/{username}/contracts get post

get

Get the contracts where the user is 1 of the parties. Order descending by date.

post

Create a new contract.

#### get /users/{username}/contracts

Get the contracts where the user is 1 of the parties. Order descending by date.

Secured by oauth_2_0 with scopes:

- user:admin

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- username: required (string)

### Query Parameters

- includeExpired: (boolean)

  Include the expired contracts, by default only the active contracts are returned.

- start: (integer)

  Start offset, useful for paging. Default is `0`.

- max: (integer - maximum: 250)

  Max page size, useful for paging. Default is `50`.

## HTTP status code 200

### Body

Media type: application/json

Type: array of Contract

Items: Contract

- parties: required (array of Party)

  Items: Party

  - type: required (string)
  - name: required (string)
- content: required (string)
- contractType: required (string - maxLength: 40)

  Free field to be used for tags by the party creating a contract

- invalidates: (array of )

  list of contractId's this contract invalidates.

- extends: (array of )

  list of contractId's this contract is an extension upon

- expires: required (datetime)
- contractId: required (string)

  The contractId is the hash of the parties, the content, the contractType, and the expiration date. To calculate the hash, take the json representation of the contract without the id and signatures, trim the newlines or spaces (except when they appear in the values) and encode in utf8. From this result, take a SHA256 followed by a RIPEMD160, next base58CheckEncode the result with a 0x00 prefix.

- signatures: required (array of Signature)

  Items: Signature

  - signedBy: required (string)
  - date: required (datetime)
  - publicKey: required (string)

    The public key used

  - signature: required (string)

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### post /users/{username}/contracts

Create a new contract.

Secured by oauth_2_0 with scopes:

- user:admin

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- username: required (string)

### Body

Media type: application/json

Type: object

Properties

- parties: required (array of Party)

  Items: Party

  - type: required (string)
  - name: required (string)
- content: required (string)
- contractType: required (string - maxLength: 40)

  Free field to be used for tags by the party creating a contract

- invalidates: (array of )

  list of contractId's this contract invalidates.

- extends: (array of )

  list of contractId's this contract is an extension upon

- expires: required (datetime)
- contractId: required (string)

  The contractId is the hash of the parties, the content, the contractType, and the expiration date. To calculate the hash, take the json representation of the contract without the id and signatures, trim the newlines or spaces (except when they appear in the values) and encode in utf8. From this result, take a SHA256 followed by a RIPEMD160, next base58CheckEncode the result with a 0x00 prefix.

- signatures: required (array of Signature)

  Items: Signature

  - signedBy: required (string)
  - date: required (datetime)
  - publicKey: required (string)

    The public key used

  - signature: required (string)

## HTTP status code 201

### Body

Media type: application/json

Type: object

Properties

- parties: required (array of Party)

  Items: Party

  - type: required (string)
  - name: required (string)
- content: required (string)
- contractType: required (string - maxLength: 40)

  Free field to be used for tags by the party creating a contract

- invalidates: (array of )

  list of contractId's this contract invalidates.

- extends: (array of )

  list of contractId's this contract is an extension upon

- expires: required (datetime)
- contractId: required (string)

  The contractId is the hash of the parties, the content, the contractType, and the expiration date. To calculate the hash, take the json representation of the contract without the id and signatures, trim the newlines or spaces (except when they appear in the values) and encode in utf8. From this result, take a SHA256 followed by a RIPEMD160, next base58CheckEncode the result with a 0x00 prefix.

- signatures: required (array of Signature)

  Items: Signature

  - signedBy: required (string)
  - date: required (datetime)
  - publicKey: required (string)

    The public key used

  - signature: required (string)

## HTTP status code 401

Unauthorized

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### /users/{username}/authorizations get

get

Get the list of authorizations.

#### get /users/{username}/authorizations

Get the list of authorizations.

Secured by oauth_2_0 with scopes:

- user:admin

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- username: required (string)

## HTTP status code 200

### Body

Media type: application/json

Type: array of Authorization

Items: Authorization

- username: required (string)
- grantedTo: required (string)

  The organization that is granted read access to some of the user's information

- addresses: (array of AuthorizationMap)

  Mapping of the labels of the granted ones to the labels the organization requested.

  Items: AuthorizationMap

  - requestedlabel: required (string - minLength: 2 - maxLength: 50 - pattern: ^[a-zA-Z\d\-_\s]{2,50}$)
  - reallabel: required (string - minLength: 2 - maxLength: 50 - pattern: ^[a-zA-Z\d\-_\s]{2,50}$)
- publicKeys: (array of AuthorizationMap)

  Items: AuthorizationMap

  - requestedlabel: required (string - minLength: 2 - maxLength: 50 - pattern: ^[a-zA-Z\d\-_\s]{2,50}$)
  - reallabel: required (string - minLength: 2 - maxLength: 50 - pattern: ^[a-zA-Z\d\-_\s]{2,50}$)
- emailaddresses: (array of AuthorizationMap)

  Mapping of the labels of the granted ones to the labels the organization requested.

  Items: AuthorizationMap

  - requestedlabel: required (string - minLength: 2 - maxLength: 50 - pattern: ^[a-zA-Z\d\-_\s]{2,50}$)
  - reallabel: required (string - minLength: 2 - maxLength: 50 - pattern: ^[a-zA-Z\d\-_\s]{2,50}$)
- phonenumbers: (array of AuthorizationMap)

  Mapping of the labels of the granted ones to the labels the organization requested.

  Items: AuthorizationMap

  - requestedlabel: required (string - minLength: 2 - maxLength: 50 - pattern: ^[a-zA-Z\d\-_\s]{2,50}$)
  - reallabel: required (string - minLength: 2 - maxLength: 50 - pattern: ^[a-zA-Z\d\-_\s]{2,50}$)
- bankaccounts: (array of AuthorizationMap)

  Mapping of the labels of the granted ones to the labels the organization requested.

  Items: AuthorizationMap

  - requestedlabel: required (string - minLength: 2 - maxLength: 50 - pattern: ^[a-zA-Z\d\-_\s]{2,50}$)
  - reallabel: required (string - minLength: 2 - maxLength: 50 - pattern: ^[a-zA-Z\d\-_\s]{2,50}$)
- facebook: (boolean)
- github: (boolean)
- organizations: required (array of )

  List of organizations the requesting organization can see your membership of.

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### /users/{username}/authorizations/{grantedTo} get delete put

get

Get the authorization for a specific organization.

delete

Remove the authorization for an organization, the granted organization will no longer have access the user's information.

put

Modify which information an organization is able to see.

#### get /users/{username}/authorizations/{grantedTo}

Get the authorization for a specific organization.

Secured by oauth_2_0

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- username: required (string)
- grantedTo: required (string)

## HTTP status code 200

### Body

Media type: application/json

Type: object

Properties

- username: required (string)
- grantedTo: required (string)

  The organization that is granted read access to some of the user's information

- addresses: (array of AuthorizationMap)

  Mapping of the labels of the granted ones to the labels the organization requested.

  Items: AuthorizationMap

  - requestedlabel: required (string - minLength: 2 - maxLength: 50 - pattern: ^[a-zA-Z\d\-_\s]{2,50}$)
  - reallabel: required (string - minLength: 2 - maxLength: 50 - pattern: ^[a-zA-Z\d\-_\s]{2,50}$)
- publicKeys: (array of AuthorizationMap)

  Items: AuthorizationMap

  - requestedlabel: required (string - minLength: 2 - maxLength: 50 - pattern: ^[a-zA-Z\d\-_\s]{2,50}$)
  - reallabel: required (string - minLength: 2 - maxLength: 50 - pattern: ^[a-zA-Z\d\-_\s]{2,50}$)
- emailaddresses: (array of AuthorizationMap)

  Mapping of the labels of the granted ones to the labels the organization requested.

  Items: AuthorizationMap

  - requestedlabel: required (string - minLength: 2 - maxLength: 50 - pattern: ^[a-zA-Z\d\-_\s]{2,50}$)
  - reallabel: required (string - minLength: 2 - maxLength: 50 - pattern: ^[a-zA-Z\d\-_\s]{2,50}$)
- phonenumbers: (array of AuthorizationMap)

  Mapping of the labels of the granted ones to the labels the organization requested.

  Items: AuthorizationMap

  - requestedlabel: required (string - minLength: 2 - maxLength: 50 - pattern: ^[a-zA-Z\d\-_\s]{2,50}$)
  - reallabel: required (string - minLength: 2 - maxLength: 50 - pattern: ^[a-zA-Z\d\-_\s]{2,50}$)
- bankaccounts: (array of AuthorizationMap)

  Mapping of the labels of the granted ones to the labels the organization requested.

  Items: AuthorizationMap

  - requestedlabel: required (string - minLength: 2 - maxLength: 50 - pattern: ^[a-zA-Z\d\-_\s]{2,50}$)
  - reallabel: required (string - minLength: 2 - maxLength: 50 - pattern: ^[a-zA-Z\d\-_\s]{2,50}$)
- facebook: (boolean)
- github: (boolean)
- organizations: required (array of )

  List of organizations the requesting organization can see your membership of.

## HTTP status code 404

No authorization for this organization was not found.

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### delete /users/{username}/authorizations/{grantedTo}

Remove the authorization for an organization, the granted organization will no longer have access the user's information.

Secured by oauth_2_0

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- username: required (string)
- grantedTo: required (string)

## HTTP status code 204

Successfully revoked authorization.

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### put /users/{username}/authorizations/{grantedTo}

Modify which information an organization is able to see.

Secured by oauth_2_0

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- username: required (string)
- grantedTo: required (string)

### Body

Media type: application/json

Type: object

Properties

- username: required (string)
- grantedTo: required (string)

  The organization that is granted read access to some of the user's information

- addresses: (array of AuthorizationMap)

  Mapping of the labels of the granted ones to the labels the organization requested.

  Items: AuthorizationMap

  - requestedlabel: required (string - minLength: 2 - maxLength: 50 - pattern: ^[a-zA-Z\d\-_\s]{2,50}$)
  - reallabel: required (string - minLength: 2 - maxLength: 50 - pattern: ^[a-zA-Z\d\-_\s]{2,50}$)
- publicKeys: (array of AuthorizationMap)

  Items: AuthorizationMap

  - requestedlabel: required (string - minLength: 2 - maxLength: 50 - pattern: ^[a-zA-Z\d\-_\s]{2,50}$)
  - reallabel: required (string - minLength: 2 - maxLength: 50 - pattern: ^[a-zA-Z\d\-_\s]{2,50}$)
- emailaddresses: (array of AuthorizationMap)

  Mapping of the labels of the granted ones to the labels the organization requested.

  Items: AuthorizationMap

  - requestedlabel: required (string - minLength: 2 - maxLength: 50 - pattern: ^[a-zA-Z\d\-_\s]{2,50}$)
  - reallabel: required (string - minLength: 2 - maxLength: 50 - pattern: ^[a-zA-Z\d\-_\s]{2,50}$)
- phonenumbers: (array of AuthorizationMap)

  Mapping of the labels of the granted ones to the labels the organization requested.

  Items: AuthorizationMap

  - requestedlabel: required (string - minLength: 2 - maxLength: 50 - pattern: ^[a-zA-Z\d\-_\s]{2,50}$)
  - reallabel: required (string - minLength: 2 - maxLength: 50 - pattern: ^[a-zA-Z\d\-_\s]{2,50}$)
- bankaccounts: (array of AuthorizationMap)

  Mapping of the labels of the granted ones to the labels the organization requested.

  Items: AuthorizationMap

  - requestedlabel: required (string - minLength: 2 - maxLength: 50 - pattern: ^[a-zA-Z\d\-_\s]{2,50}$)
  - reallabel: required (string - minLength: 2 - maxLength: 50 - pattern: ^[a-zA-Z\d\-_\s]{2,50}$)
- facebook: (boolean)
- github: (boolean)
- organizations: required (array of )

  List of organizations the requesting organization can see your membership of.

## HTTP status code 201

Authorization updated successfully.

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### /users/{username}/organizations get

get

Get the list organizations a user is owner or member of

#### get /users/{username}/organizations

Get the list organizations a user is owner or member of

Secured by oauth_2_0 with scopes:

- user:admin

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- username: required (string)

## HTTP status code 200

### Body

Media type: application/json

Type: object

Properties

- owner: required (array of )
- member: required (array of )

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### /users/{username}/organizations/{globalid}/leave delete

delete

Removes the user from an organization

#### delete /users/{username}/organizations/{globalid}/leave

Removes the user from an organization

Secured by oauth_2_0

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- username: required (string)
- globalid: required (string)

## HTTP status code 204

Successfully removed user from organization

## HTTP status code 404

Organization not found

### Body

Media type: application/json

Type: object

Properties

- error: required (string)

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### /users/{username}/organizations/{globalid}/roles/{role} post delete

post

Accept membership in organization

delete

Reject membership invitation in an organization.

#### post /users/{username}/organizations/{globalid}/roles/{role}

Accept membership in organization

Secured by oauth_2_0

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- username: required (string)
- globalid: required (string)
- role: required (string)

### Body

Media type: application/json

Type: object

Properties

- organization: required (string)
- user: required (string)
- role: required (one of owner, member, orgowner, orgmember)
- created: (datetime)
- status: required (one of pending, accepted, rejected)
- method: required (one of website, email, phone)
- emailaddress: required (string)
- phonenumber: required (string)
- isorganization: required (boolean)

Example:

    {
      "organization": "mycoolsoccerclub",
      "user": "bob",
      "role": "owner",
      "created": "2016-02-28T16:41:41.090Z",
      "status": "pending",
      "method": "website",
      "emailaddress": "",
      "phonenumber": "",
      "isorganization": false
    }

## HTTP status code 201

### Body

Media type: application/json

Type: object

Properties

- organization: required (string)
- user: required (string)
- role: required (one of owner, member, orgowner, orgmember)
- created: (datetime)
- status: required (one of pending, accepted, rejected)
- method: required (one of website, email, phone)
- emailaddress: required (string)
- phonenumber: required (string)
- isorganization: required (boolean)

Example:

    {
      "organization": "mycoolsoccerclub",
      "user": "bob",
      "role": "owner",
      "created": "2016-02-28T16:41:41.090Z",
      "status": "pending",
      "method": "website",
      "emailaddress": "",
      "phonenumber": "",
      "isorganization": false
    }

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### delete /users/{username}/organizations/{globalid}/roles/{role}

Reject membership invitation in an organization.

Secured by oauth_2_0

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- username: required (string)
- globalid: required (string)
- role: required (string)

## HTTP status code 204

Succesfully rejected invitation.

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### /users/{username}/publickeys get post

get

Lists all public keys

post

Add a public key

#### get /users/{username}/publickeys

Lists all public keys

Secured by oauth_2_0 with scopes:

- user:admin

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- username: required (string)

## HTTP status code 200

### Body

Media type: application/json

Type: array of PublicKey

Items: PublicKey

- label: required (string - minLength: 2 - maxLength: 50 - pattern: ^[a-zA-Z\d\-_\s]{2,50}$)
- publickey: required (string)

## HTTP status code 404

Not found

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### post /users/{username}/publickeys

Add a public key

Secured by oauth_2_0 with scopes:

- user:admin

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- username: required (string)

### Body

Media type: application/json

Type: object

Properties

- label: required (string - minLength: 2 - maxLength: 50 - pattern: ^[a-zA-Z\d\-_\s]{2,50}$)
- publickey: required (string)

## HTTP status code 201

### Body

Media type: application/json

Type: object

Properties

- label: required (string - minLength: 2 - maxLength: 50 - pattern: ^[a-zA-Z\d\-_\s]{2,50}$)
- publickey: required (string)

## HTTP status code 404

Not found

## HTTP status code 409

Duplicate label

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### /users/{username}/publickeys/{label} get put delete

get

Get a public key

put

Upates the label and/or key of an existing public key

delete

Delete a public key

#### get /users/{username}/publickeys/{label}

Get a public key

Secured by oauth_2_0 with scopes:

- user:admin

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- username: required (string)
- label: required (string)

## HTTP status code 200

### Body

Media type: application/json

Type: object

Properties

- label: required (string - minLength: 2 - maxLength: 50 - pattern: ^[a-zA-Z\d\-_\s]{2,50}$)
- publickey: required (string)

## HTTP status code 404

Not found

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### put /users/{username}/publickeys/{label}

Upates the label and/or key of an existing public key

Secured by oauth_2_0 with scopes:

- user:admin

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- username: required (string)
- label: required (string)

### Body

Media type: application/json

Type: object

Properties

- label: required (string - minLength: 2 - maxLength: 50 - pattern: ^[a-zA-Z\d\-_\s]{2,50}$)
- publickey: required (string)

## HTTP status code 201

### Body

Media type: application/json

Type: object

Properties

- label: required (string - minLength: 2 - maxLength: 50 - pattern: ^[a-zA-Z\d\-_\s]{2,50}$)
- publickey: required (string)

## HTTP status code 404

Not found

## HTTP status code 409

Duplicate label

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### delete /users/{username}/publickeys/{label}

Delete a public key

Secured by oauth_2_0 with scopes:

- user:admin

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- username: required (string)
- label: required (string)

## HTTP status code 204

Public key deleted

## HTTP status code 404

Not found

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### /users/{username}/keystore get post

get

Lists all keys written to this users keystore by the accessing organization

post

Saves a new key to this users keystore. The username, globalid and timestamp will be overwritten

#### get /users/{username}/keystore

Lists all keys written to this users keystore by the accessing organization

Secured by oauth_2_0 with scopes:

- user:keystore

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- username: required (string)

## HTTP status code 200

### Body

Media type: application/json

Type: array of KeyStoreKey

Items: KeyStoreKey

- label: required (string - minLength: 2 - maxLength: 50 - pattern: ^[a-zA-Z\d\-_\s]{2,50}$)
- username: (string)
- globalid: (string)
- key: required (string)
- keydata: required (object)
  - timestamp: (datetime)
  - comment: (string)
  - algorithm: required (string)

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### post /users/{username}/keystore

Saves a new key to this users keystore. The username, globalid and timestamp will be overwritten

Secured by oauth_2_0 with scopes:

- user:keystore

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- username: required (string)

### Body

Media type: application/json

Type: object

Properties

- label: required (string - minLength: 2 - maxLength: 50 - pattern: ^[a-zA-Z\d\-_\s]{2,50}$)
- username: (string)
- globalid: (string)
- key: required (string)
- keydata: required (object)
  - timestamp: (datetime)
  - comment: (string)
  - algorithm: required (string)

## HTTP status code 201

### Body

Media type: application/json

Type: object

Properties

- label: required (string - minLength: 2 - maxLength: 50 - pattern: ^[a-zA-Z\d\-_\s]{2,50}$)
- username: (string)
- globalid: (string)
- key: required (string)
- keydata: required (object)
  - timestamp: (datetime)
  - comment: (string)
  - algorithm: required (string)

## HTTP status code 409

A key with this label for this organization in this user's keystore already exists

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### /users/{username}/keystore/{label} get

get

Gets the key written to this users keystore for the given label by the accessing organization

#### get /users/{username}/keystore/{label}

Gets the key written to this users keystore for the given label by the accessing organization

Secured by oauth_2_0

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- username: required (string)
- label: required (string)

## HTTP status code 200

### Body

Media type: application/json

Type: object

Properties

- label: required (string - minLength: 2 - maxLength: 50 - pattern: ^[a-zA-Z\d\-_\s]{2,50}$)
- username: (string)
- globalid: (string)
- key: required (string)
- keydata: required (object)
  - timestamp: (datetime)
  - comment: (string)
  - algorithm: required (string)

## HTTP status code 404

No key found for this label

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### /users/{username}/see get post

get

Get a list of all see objects.

post

Create new see object

#### get /users/{username}/see

Get a list of all see objects.

Secured by oauth_2_0 with scopes:

- user:admin
- user:see

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- username: required (string)

## HTTP status code 200

### Body

Media type: application/json

Type: array of SeeView

Items: SeeView

- username: required (string)
- globalid: required (string)
- uniqueid: required (string)
- version: required (integer)
- category: required (string)
- link: required (string)
- content_type: required (string)
- markdown_short_description: required (string)
- markdown_full_description: required (string)
- creation_date: required (string)
- start_date: required (string)
- end_date: required (string)
- keystore_label: required (string)
- signature: required (string)

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### post /users/{username}/see

Create new see object

Secured by oauth_2_0 with scopes:

- user:see

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- username: required (string)

### Body

Media type: application/json

Type: object

Properties

- username: required (string)
- globalid: required (string)
- uniqueid: required (string)
- version: required (integer)
- category: required (string)
- link: required (string)
- content_type: required (string)
- markdown_short_description: required (string)
- markdown_full_description: required (string)
- creation_date: required (string)
- start_date: required (string)
- end_date: required (string)
- keystore_label: required (string)
- signature: required (string)

## HTTP status code 201

### Body

Media type: application/json

Type: object

Properties

- username: required (string)
- globalid: required (string)
- uniqueid: required (string)
- version: required (integer)
- category: required (string)
- link: required (string)
- content_type: required (string)
- markdown_short_description: required (string)
- markdown_full_description: required (string)
- creation_date: required (string)
- start_date: required (string)
- end_date: required (string)
- keystore_label: required (string)
- signature: required (string)

## HTTP status code 404

Not found

## HTTP status code 412

No keystore with the specified label was found for the user

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### /users/{username}/see/{uniqueid}/{globalid} get put

get

Get a see object

put

Updates a see object

#### get /users/{username}/see/{uniqueid}/{globalid}

Get a see object

Secured by oauth_2_0 with scopes:

- user:admin
- user:see

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- username: required (string)
- uniqueid: required (string)
- globalid: required (string)

### Query Parameters

- version: (integer - default: -1)

  What version to filter. -1 latest version, 0 all versions if the version is not found default value will be used.

## HTTP status code 200

### Body

Media type: application/json

Type: object

Properties

- username: required (string)
- globalid: required (string)
- uniqueid: required (string)
- versions: required (array of SeeVersion)

  Items: SeeVersion

  - version: required (integer)
  - category: required (string)
  - link: required (string)
  - content_type: required (string)
  - markdown_short_description: required (string)
  - markdown_full_description: required (string)
  - creation_date: required (string)
  - start_date: required (string)
  - end_date: required (string)
  - keystore_label: required (string)
  - signature: required (string)

## HTTP status code 404

Not found

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### put /users/{username}/see/{uniqueid}/{globalid}

Updates a see object

Secured by oauth_2_0 with scopes:

- user:see

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- username: required (string)
- uniqueid: required (string)
- globalid: required (string)

### Body

Media type: application/json

Type: object

Properties

- username: required (string)
- globalid: required (string)
- uniqueid: required (string)
- version: required (integer)
- category: required (string)
- link: required (string)
- content_type: required (string)
- markdown_short_description: required (string)
- markdown_full_description: required (string)
- creation_date: required (string)
- start_date: required (string)
- end_date: required (string)
- keystore_label: required (string)
- signature: required (string)

## HTTP status code 201

### Body

Media type: application/json

Type: object

Properties

- username: required (string)
- globalid: required (string)
- uniqueid: required (string)
- version: required (integer)
- category: required (string)
- link: required (string)
- content_type: required (string)
- markdown_short_description: required (string)
- markdown_full_description: required (string)
- creation_date: required (string)
- start_date: required (string)
- end_date: required (string)
- keystore_label: required (string)
- signature: required (string)

## HTTP status code 404

Not found

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### /users/{username}/see/{uniqueid}/{globalid}/sign/{version} put

put

Sign a see object

#### put /users/{username}/see/{uniqueid}/{globalid}/sign/{version}

Sign a see object

Secured by oauth_2_0

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- username: required (string)
- uniqueid: required (string)
- globalid: required (string)
- version: required (string)

### Body

Media type: application/json

Type: object

Properties

- username: required (string)
- globalid: required (string)
- uniqueid: required (string)
- version: required (integer)
- category: required (string)
- link: required (string)
- content_type: required (string)
- markdown_short_description: required (string)
- markdown_full_description: required (string)
- creation_date: required (string)
- start_date: required (string)
- end_date: required (string)
- keystore_label: required (string)
- signature: required (string)

## HTTP status code 201

### Body

Media type: application/json

Type: object

Properties

- username: required (string)
- globalid: required (string)
- uniqueid: required (string)
- version: required (integer)
- category: required (string)
- link: required (string)
- content_type: required (string)
- markdown_short_description: required (string)
- markdown_full_description: required (string)
- creation_date: required (string)
- start_date: required (string)
- end_date: required (string)
- keystore_label: required (string)
- signature: required (string)

## HTTP status code 404

Not found

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

### /organizations

#### /organizations post

post

Create a new organization. 1 user should be in the owners list. Validation is performed to check if the securityScheme allows management on this user.

#### post /organizations

Create a new organization. 1 user should be in the owners list. Validation is performed to check if the securityScheme allows management on this user.

Secured by oauth_2_0

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### Body

Media type: application/json

Type: object

Properties

- globalid: required (string - minLength: 3 - maxLength: 150 - pattern: ^[a-z\d\-_\s]{3,150}$)
- publicKeys: required (array of )
- dns: required (array of )

  List of organization DNS.

- owners: required (array of )

  List of users `usernames`.

- members: required (array of )

  List of users who are member in this organization.

- orgowners: required (array of )

  List of other organizations who act as an owner in this organization.

- orgmembers: required (array of )

  List of other organizations who act as a member in this organization.

- includes: required (array of )

  globalId of sub organizations

- requiredscopes: required (array of RequiredScope)

  List of scopes that are required to join this organization

  Items: RequiredScope

  - scope: required (string - maxLength: 1024)

    Scope which should be shared with an organization

  - accessscopes: required (array of )

    Which users can see the shared information.

- includesuborgsof: required (array of )

  List of orgowners and orgmembers who's children should be included in the organizations membershi or ownership hierarchy

Example:

    {
      "globalid": "greenitglobe",
      "publicKeys": [
        "1A9WWh6iAE4RZGN7axy6xZbuWuLknqWLrV"
      ],
      "dns": [
        "greenitglobe.com"
      ],
      "owners": [
        "user1",
        "user2",
        "user3"
      ],
      "members": [
        "user4"
      ],
      "orgowners": [
        "organization1"
      ],
      "orgmembers": [
        "organization2",
        "organization3"
      ],
      "includes": [
        "admin.greenitglobe.com"
      ],
      "requiredscopes": [
        {
          "scope": "user:name",
          "accessscopes": [
            "organization:owner",
            "organization:member"
          ]
        },
        {
          "scope": "user:email:personal email",
          "accessscopes": [
            "organization:owner"
          ]
        }
      ],
      "includesuborgsof": [
        "organization2"
      ]
    }

## HTTP status code 201

### Body

Media type: application/json

Type: object

Properties

- globalid: required (string - minLength: 3 - maxLength: 150 - pattern: ^[a-z\d\-_\s]{3,150}$)
- publicKeys: required (array of )
- dns: required (array of )

  List of organization DNS.

- owners: required (array of )

  List of users `usernames`.

- members: required (array of )

  List of users who are member in this organization.

- orgowners: required (array of )

  List of other organizations who act as an owner in this organization.

- orgmembers: required (array of )

  List of other organizations who act as a member in this organization.

- includes: required (array of )

  globalId of sub organizations

- requiredscopes: required (array of RequiredScope)

  List of scopes that are required to join this organization

  Items: RequiredScope

  - scope: required (string - maxLength: 1024)

    Scope which should be shared with an organization

  - accessscopes: required (array of )

    Which users can see the shared information.

- includesuborgsof: required (array of )

  List of orgowners and orgmembers who's children should be included in the organizations membershi or ownership hierarchy

Example:

    {
      "globalid": "greenitglobe",
      "publicKeys": [
        "1A9WWh6iAE4RZGN7axy6xZbuWuLknqWLrV"
      ],
      "dns": [
        "greenitglobe.com"
      ],
      "owners": [
        "user1",
        "user2",
        "user3"
      ],
      "members": [
        "user4"
      ],
      "orgowners": [
        "organization1"
      ],
      "orgmembers": [
        "organization2",
        "organization3"
      ],
      "includes": [
        "admin.greenitglobe.com"
      ],
      "requiredscopes": [
        {
          "scope": "user:name",
          "accessscopes": [
            "organization:owner",
            "organization:member"
          ]
        },
        {
          "scope": "user:email:personal email",
          "accessscopes": [
            "organization:owner"
          ]
        }
      ],
      "includesuborgsof": [
        "organization2"
      ]
    }

## HTTP status code 401

Unauthorized

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### /organizations/{globalid} get post delete

get

Get organization info

post

Create a new suborganization.

delete

Deletes an organization and all data linked to it (join-organization-invitations, oauth_access_tokens, oauth_clients, logo)

#### get /organizations/{globalid}

Get organization info

Secured by oauth_2_0 with scopes:

- organization:member
- organization:owner

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- globalid: required (string)

## HTTP status code 200

### Body

Media type: application/json

Type: object

Properties

- globalid: required (string - minLength: 3 - maxLength: 150 - pattern: ^[a-z\d\-_\s]{3,150}$)
- publicKeys: required (array of )
- dns: required (array of )

  List of organization DNS.

- owners: required (array of )

  List of users `usernames`.

- members: required (array of )

  List of users who are member in this organization.

- orgowners: required (array of )

  List of other organizations who act as an owner in this organization.

- orgmembers: required (array of )

  List of other organizations who act as a member in this organization.

- includes: required (array of )

  globalId of sub organizations

- requiredscopes: required (array of RequiredScope)

  List of scopes that are required to join this organization

  Items: RequiredScope

  - scope: required (string - maxLength: 1024)

    Scope which should be shared with an organization

  - accessscopes: required (array of )

    Which users can see the shared information.

- includesuborgsof: required (array of )

  List of orgowners and orgmembers who's children should be included in the organizations membershi or ownership hierarchy

Example:

    {
      "globalid": "greenitglobe",
      "publicKeys": [
        "1A9WWh6iAE4RZGN7axy6xZbuWuLknqWLrV"
      ],
      "dns": [
        "greenitglobe.com"
      ],
      "owners": [
        "user1",
        "user2",
        "user3"
      ],
      "members": [
        "user4"
      ],
      "orgowners": [
        "organization1"
      ],
      "orgmembers": [
        "organization2",
        "organization3"
      ],
      "includes": [
        "admin.greenitglobe.com"
      ],
      "requiredscopes": [
        {
          "scope": "user:name",
          "accessscopes": [
            "organization:owner",
            "organization:member"
          ]
        },
        {
          "scope": "user:email:personal email",
          "accessscopes": [
            "organization:owner"
          ]
        }
      ],
      "includesuborgsof": [
        "organization2"
      ]
    }

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### post /organizations/{globalid}

Create a new suborganization.

Secured by oauth_2_0 with scopes:

- organization:owner

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- globalid: required (string)

### Body

Media type: application/json

Type: object

Properties

- globalid: required (string - minLength: 3 - maxLength: 150 - pattern: ^[a-z\d\-_\s]{3,150}$)
- publicKeys: required (array of )
- dns: required (array of )

  List of organization DNS.

- owners: required (array of )

  List of users `usernames`.

- members: required (array of )

  List of users who are member in this organization.

- orgowners: required (array of )

  List of other organizations who act as an owner in this organization.

- orgmembers: required (array of )

  List of other organizations who act as a member in this organization.

- includes: required (array of )

  globalId of sub organizations

- requiredscopes: required (array of RequiredScope)

  List of scopes that are required to join this organization

  Items: RequiredScope

  - scope: required (string - maxLength: 1024)

    Scope which should be shared with an organization

  - accessscopes: required (array of )

    Which users can see the shared information.

- includesuborgsof: required (array of )

  List of orgowners and orgmembers who's children should be included in the organizations membershi or ownership hierarchy

Example:

    {
      "globalid": "greenitglobe",
      "publicKeys": [
        "1A9WWh6iAE4RZGN7axy6xZbuWuLknqWLrV"
      ],
      "dns": [
        "greenitglobe.com"
      ],
      "owners": [
        "user1",
        "user2",
        "user3"
      ],
      "members": [
        "user4"
      ],
      "orgowners": [
        "organization1"
      ],
      "orgmembers": [
        "organization2",
        "organization3"
      ],
      "includes": [
        "admin.greenitglobe.com"
      ],
      "requiredscopes": [
        {
          "scope": "user:name",
          "accessscopes": [
            "organization:owner",
            "organization:member"
          ]
        },
        {
          "scope": "user:email:personal email",
          "accessscopes": [
            "organization:owner"
          ]
        }
      ],
      "includesuborgsof": [
        "organization2"
      ]
    }

## HTTP status code 201

### Body

Media type: application/json

Type: object

Properties

- globalid: required (string - minLength: 3 - maxLength: 150 - pattern: ^[a-z\d\-_\s]{3,150}$)
- publicKeys: required (array of )
- dns: required (array of )

  List of organization DNS.

- owners: required (array of )

  List of users `usernames`.

- members: required (array of )

  List of users who are member in this organization.

- orgowners: required (array of )

  List of other organizations who act as an owner in this organization.

- orgmembers: required (array of )

  List of other organizations who act as a member in this organization.

- includes: required (array of )

  globalId of sub organizations

- requiredscopes: required (array of RequiredScope)

  List of scopes that are required to join this organization

  Items: RequiredScope

  - scope: required (string - maxLength: 1024)

    Scope which should be shared with an organization

  - accessscopes: required (array of )

    Which users can see the shared information.

- includesuborgsof: required (array of )

  List of orgowners and orgmembers who's children should be included in the organizations membershi or ownership hierarchy

Example:

    {
      "globalid": "greenitglobe",
      "publicKeys": [
        "1A9WWh6iAE4RZGN7axy6xZbuWuLknqWLrV"
      ],
      "dns": [
        "greenitglobe.com"
      ],
      "owners": [
        "user1",
        "user2",
        "user3"
      ],
      "members": [
        "user4"
      ],
      "orgowners": [
        "organization1"
      ],
      "orgmembers": [
        "organization2",
        "organization3"
      ],
      "includes": [
        "admin.greenitglobe.com"
      ],
      "requiredscopes": [
        {
          "scope": "user:name",
          "accessscopes": [
            "organization:owner",
            "organization:member"
          ]
        },
        {
          "scope": "user:email:personal email",
          "accessscopes": [
            "organization:owner"
          ]
        }
      ],
      "includesuborgsof": [
        "organization2"
      ]
    }

## HTTP status code 404

Parent organization does not exist

### Body

Media type: application/json

Type: object

Properties

- error: required (string)

## HTTP status code 422

Maximum amount of organizations reached

### Body

Media type: application/json

Type: object

Properties

- error: required (string)

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### delete /organizations/{globalid}

Deletes an organization and all data linked to it (join-organization-invitations, oauth_access_tokens, oauth_clients, logo)

Secured by oauth_2_0 with scopes:

- organization:owner

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- globalid: required (string)

## HTTP status code 204

Organization and all child organizations deleted

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### /organizations/{globalid}/description post put

post

Set the description for this organization for a given language key

put

Update the description for this organization for a given language key

#### post /organizations/{globalid}/description

Set the description for this organization for a given language key

Secured by oauth_2_0 with scopes:

- organization:owner

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- globalid: required (string)

### Body

Media type: application/json

Type: object

Properties

- langkey: required (string)
- text: required (string)

## HTTP status code 201

description set successfully

### Body

Media type: application/json

Type: object

Properties

- langkey: required (string)
- text: required (string)

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### put /organizations/{globalid}/description

Update the description for this organization for a given language key

Secured by oauth_2_0 with scopes:

- organization:owner

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- globalid: required (string)

### Body

Media type: application/json

Type: object

Properties

- langkey: required (string)
- text: required (string)

## HTTP status code 200

description updated successfully

### Body

Media type: application/json

Type: object

Properties

- langkey: required (string)
- text: required (string)

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### /organizations/{globalid}/description/{langkey} get delete

get

Get the description for an organization for this langkey

delete

Delete the description for this organization for a given language key

#### get /organizations/{globalid}/description/{langkey}

Get the description for an organization for this langkey

Secured by oauth_2_0

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- globalid: required (string)
- langkey: required (string)

## HTTP status code 200

Description retrieved successfully

### Body

Media type: application/json

Type: object

Properties

- langkey: required (string)
- text: required (string)

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### delete /organizations/{globalid}/description/{langkey}

Delete the description for this organization for a given language key

Secured by oauth_2_0 with scopes:

- organization:owner

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- globalid: required (string)
- langkey: required (string)

## HTTP status code 204

Description deleted successfully

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### /organizations/{globalid}/description/{langkey}/withfallback get

get

Get the description for an organization for this langkey, try to use the English is there is no description for this langkey

#### get /organizations/{globalid}/description/{langkey}/withfallback

Get the description for an organization for this langkey, try to use the English is there is no description for this langkey

Secured by oauth_2_0

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- globalid: required (string)
- langkey: required (string)

## HTTP status code 200

Description retrieved successfully

### Body

Media type: application/json

Type: object

Properties

- langkey: required (string)
- text: required (string)

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### /organizations/{globalid}/logo get put delete

get

Get the Logo from an organization

put

Set the organization Logo for the organization

delete

Removes the Logo from an organization

#### get /organizations/{globalid}/logo

Get the Logo from an organization

Secured by oauth_2_0

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- globalid: required (string)

## HTTP status code 200

logo retrieved successfully

### Body

Media type: application/json

Type: object

Properties

- logo: required (string)

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### put /organizations/{globalid}/logo

Set the organization Logo for the organization

Secured by oauth_2_0 with scopes:

- organization:owner

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- globalid: required (string)

### Body

Media type: application/json

Type: object

Properties

- logo: required (string)

## HTTP status code 200

updated successfully

### Body

Media type: application/json

Type: object

Properties

- logo: required (string)

## HTTP status code 413

file size too large

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### delete /organizations/{globalid}/logo

Removes the Logo from an organization

Secured by oauth_2_0 with scopes:

- organization:owner

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- globalid: required (string)

## HTTP status code 204

Logo deleted

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### /organizations/{globalid}/2fa/validity get put

get

Get the 2FA validity time for the organization, in seconds

put

Update the 2FA validity time for the organization

#### get /organizations/{globalid}/2fa/validity

Get the 2FA validity time for the organization, in seconds

Secured by oauth_2_0

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- globalid: required (string)

## HTTP status code 200

Get the 2FA validity time for this organization

### Body

Media type: application/json

Type: integer

## HTTP status code 404

Organization not found

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### put /organizations/{globalid}/2fa/validity

Update the 2FA validity time for the organization

Secured by oauth_2_0 with scopes:

- organization:owner

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- globalid: required (string)

### Body

Media type: application/json

Type: integer

## HTTP status code 200

Updated successfully

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### /organizations/{globalid}/orgmembers post put

post

Add another organization as a member of this one

put

Update the membership status of an organization

#### post /organizations/{globalid}/orgmembers

Add another organization as a member of this one

Secured by oauth_2_0 with scopes:

- organization:owner

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- globalid: required (string)

### Body

Media type: application/json

Type: object

Properties

- orgmember: required (string)

## HTTP status code 201

Organization successfully added as a member

## HTTP status code 404

Organization not found

## HTTP status code 409

Organization is already an owner or a member

## HTTP status code 422

Max amount of invitations reached.

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### put /organizations/{globalid}/orgmembers

Update the membership status of an organization

Secured by oauth_2_0 with scopes:

- organization:owner

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- globalid: required (string)

### Body

Media type: application/json

Type: object

Properties

- org: required (string)
- role: required (string)

## HTTP status code 200

updated organization membership successfully

### Body

Media type: application/json

Type: object

Properties

- globalid: required (string - minLength: 3 - maxLength: 150 - pattern: ^[a-z\d\-_\s]{3,150}$)
- publicKeys: required (array of )
- dns: required (array of )

  List of organization DNS.

- owners: required (array of )

  List of users `usernames`.

- members: required (array of )

  List of users who are member in this organization.

- orgowners: required (array of )

  List of other organizations who act as an owner in this organization.

- orgmembers: required (array of )

  List of other organizations who act as a member in this organization.

- includes: required (array of )

  globalId of sub organizations

- requiredscopes: required (array of RequiredScope)

  List of scopes that are required to join this organization

  Items: RequiredScope

  - scope: required (string - maxLength: 1024)

    Scope which should be shared with an organization

  - accessscopes: required (array of )

    Which users can see the shared information.

- includesuborgsof: required (array of )

  List of orgowners and orgmembers who's children should be included in the organizations membershi or ownership hierarchy

Example:

    {
      "globalid": "greenitglobe",
      "publicKeys": [
        "1A9WWh6iAE4RZGN7axy6xZbuWuLknqWLrV"
      ],
      "dns": [
        "greenitglobe.com"
      ],
      "owners": [
        "user1",
        "user2",
        "user3"
      ],
      "members": [
        "user4"
      ],
      "orgowners": [
        "organization1"
      ],
      "orgmembers": [
        "organization2",
        "organization3"
      ],
      "includes": [
        "admin.greenitglobe.com"
      ],
      "requiredscopes": [
        {
          "scope": "user:name",
          "accessscopes": [
            "organization:owner",
            "organization:member"
          ]
        },
        {
          "scope": "user:email:personal email",
          "accessscopes": [
            "organization:owner"
          ]
        }
      ],
      "includesuborgsof": [
        "organization2"
      ]
    }

## HTTP status code 404

Organization not found

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### /organizations/{globalid}/orgmembers/includesuborgs post

post

Add an orgmember or orgowner organization to the includesuborgsof list

#### post /organizations/{globalid}/orgmembers/includesuborgs

Add an orgmember or orgowner organization to the includesuborgsof list

Secured by oauth_2_0 with scopes:

- organization:owner

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- globalid: required (string)

### Body

Media type: application/json

Type: object

Properties

- globalid: required (string)

## HTTP status code 201

organization addedd successfully

### Body

Media type: application/json

Type: object

Properties

- globalid: required (string - minLength: 3 - maxLength: 150 - pattern: ^[a-z\d\-_\s]{3,150}$)
- publicKeys: required (array of )
- dns: required (array of )

  List of organization DNS.

- owners: required (array of )

  List of users `usernames`.

- members: required (array of )

  List of users who are member in this organization.

- orgowners: required (array of )

  List of other organizations who act as an owner in this organization.

- orgmembers: required (array of )

  List of other organizations who act as a member in this organization.

- includes: required (array of )

  globalId of sub organizations

- requiredscopes: required (array of RequiredScope)

  List of scopes that are required to join this organization

  Items: RequiredScope

  - scope: required (string - maxLength: 1024)

    Scope which should be shared with an organization

  - accessscopes: required (array of )

    Which users can see the shared information.

- includesuborgsof: required (array of )

  List of orgowners and orgmembers who's children should be included in the organizations membershi or ownership hierarchy

Example:

    {
      "globalid": "greenitglobe",
      "publicKeys": [
        "1A9WWh6iAE4RZGN7axy6xZbuWuLknqWLrV"
      ],
      "dns": [
        "greenitglobe.com"
      ],
      "owners": [
        "user1",
        "user2",
        "user3"
      ],
      "members": [
        "user4"
      ],
      "orgowners": [
        "organization1"
      ],
      "orgmembers": [
        "organization2",
        "organization3"
      ],
      "includes": [
        "admin.greenitglobe.com"
      ],
      "requiredscopes": [
        {
          "scope": "user:name",
          "accessscopes": [
            "organization:owner",
            "organization:member"
          ]
        },
        {
          "scope": "user:email:personal email",
          "accessscopes": [
            "organization:owner"
          ]
        }
      ],
      "includesuborgsof": [
        "organization2"
      ]
    }

## HTTP status code 404

Organization not found

## HTTP status code 409

Organization is already in the list

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### /organizations/{globalid}/orgmembers/includesuborgs/{orgmember} delete

delete

Remove an orgmember or orgowner organization to the includesuborgsof list

#### delete /organizations/{globalid}/orgmembers/includesuborgs/{orgmember}

Remove an orgmember or orgowner organization to the includesuborgsof list

Secured by oauth_2_0 with scopes:

- organization:owner

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- globalid: required (string)
- orgmember: required (string)

## HTTP status code 204

organization removed from includelist

## HTTP status code 404

organization not found

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### /organizations/{globalid}/orgmembers/{globalid2} delete

delete

Remove an organization as a member

#### delete /organizations/{globalid}/orgmembers/{globalid2}

Remove an organization as a member

Secured by oauth_2_0

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- globalid: required (string)
- globalid2: required (string)

## HTTP status code 204

Organization member removed successfully

## HTTP status code 404

The user or the organization does not exist.

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### /organizations/{globalid}/users get

get

Get all users from this organization, not including suborganizations.

#### get /organizations/{globalid}/users

Get all users from this organization, not including suborganizations.

Secured by oauth_2_0 with scopes:

- organization:owner
- organization:member

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- globalid: required (string)

## HTTP status code 200

### Body

Media type: application/json

Type: object

Properties

- haseditpermissions: required (boolean)
- users: required (array of OrganizationUser)

  Items: OrganizationUser

  - username: required (string)
  - role: required (string)

    role of the user in this organization, either organization:member or organization:owner

  - missingscopes: required (array of )

    list of required roles that the user didn't share yet.

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### /organizations/{globalid}/users/ismember/{username} get

get

Checks if the user has memberschip rights on the organization

#### get /organizations/{globalid}/users/ismember/{username}

Checks if the user has memberschip rights on the organization

Secured by oauth_2_0 with scopes:

- organization:owner

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- globalid: required (string)
- username: required (string)

## HTTP status code 200

### Body

Media type: application/json

Type: object

Properties

- IsMember: required (boolean)

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### /organizations/{globalid}/orgowners post

post

Add another organization as an owner of this one

#### post /organizations/{globalid}/orgowners

Add another organization as an owner of this one

Secured by oauth_2_0 with scopes:

- organization:owner

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- globalid: required (string)

### Body

Media type: application/json

Type: object

Properties

- orgowner: required (string)

## HTTP status code 201

Organization successfully added as an owner

## HTTP status code 404

Organization not found

## HTTP status code 409

Organization is already an owner or a member

## HTTP status code 422

Max amount of invitations reached.

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### /organizations/{globalid}/orgowners/{globalid2} delete

delete

Remove an organization as an owner

#### delete /organizations/{globalid}/orgowners/{globalid2}

Remove an organization as an owner

Secured by oauth_2_0

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- globalid: required (string)
- globalid2: required (string)

## HTTP status code 204

Organization owner removed successfully

## HTTP status code 404

The organization does not exist.

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### /organizations/{globalid}/organizations/{invitingorg}/roles/{role} post delete

post

Accept the invite for one of your organizations

delete

Reject the invite for one of your organizations

#### post /organizations/{globalid}/organizations/{invitingorg}/roles/{role}

Accept the invite for one of your organizations

Secured by oauth_2_0 with scopes:

- organization:owner

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- globalid: required (string)
- invitingorg: required (string)
- role: required (string)

### Body

Media type: application/json

Type: object

Properties

- organization: required (string)
- user: required (string)
- role: required (one of owner, member, orgowner, orgmember)
- created: (datetime)
- status: required (one of pending, accepted, rejected)
- method: required (one of website, email, phone)
- emailaddress: required (string)
- phonenumber: required (string)
- isorganization: required (boolean)

Example:

    {
      "organization": "mycoolsoccerclub",
      "user": "bob",
      "role": "owner",
      "created": "2016-02-28T16:41:41.090Z",
      "status": "pending",
      "method": "website",
      "emailaddress": "",
      "phonenumber": "",
      "isorganization": false
    }

## HTTP status code 201

Invite accepted

### Body

Media type: application/json

Type: object

Properties

- organization: required (string)
- user: required (string)
- role: required (one of owner, member, orgowner, orgmember)
- created: (datetime)
- status: required (one of pending, accepted, rejected)
- method: required (one of website, email, phone)
- emailaddress: required (string)
- phonenumber: required (string)
- isorganization: required (boolean)

Example:

    {
      "organization": "mycoolsoccerclub",
      "user": "bob",
      "role": "owner",
      "created": "2016-02-28T16:41:41.090Z",
      "status": "pending",
      "method": "website",
      "emailaddress": "",
      "phonenumber": "",
      "isorganization": false
    }

## HTTP status code 404

Invite not found

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### delete /organizations/{globalid}/organizations/{invitingorg}/roles/{role}

Reject the invite for one of your organizations

Secured by oauth_2_0 with scopes:

- organization:owner

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- globalid: required (string)
- invitingorg: required (string)
- role: required (string)

## HTTP status code 204

Invite rejected

## HTTP status code 404

Invite not found

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### /organizations/{globalid}/members put post

put

Update an organization membership

post

Invite someone to become member of an organization.

#### put /organizations/{globalid}/members

Update an organization membership

Secured by oauth_2_0 with scopes:

- organization:owner

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- globalid: required (string)

### Body

Media type: application/json

Type: object

Properties

- username: required (string)
- role: required (string)

## HTTP status code 200

updated successfully

### Body

Media type: application/json

Type: object

Properties

- globalid: required (string - minLength: 3 - maxLength: 150 - pattern: ^[a-z\d\-_\s]{3,150}$)
- publicKeys: required (array of )
- dns: required (array of )

  List of organization DNS.

- owners: required (array of )

  List of users `usernames`.

- members: required (array of )

  List of users who are member in this organization.

- orgowners: required (array of )

  List of other organizations who act as an owner in this organization.

- orgmembers: required (array of )

  List of other organizations who act as a member in this organization.

- includes: required (array of )

  globalId of sub organizations

- requiredscopes: required (array of RequiredScope)

  List of scopes that are required to join this organization

  Items: RequiredScope

  - scope: required (string - maxLength: 1024)

    Scope which should be shared with an organization

  - accessscopes: required (array of )

    Which users can see the shared information.

- includesuborgsof: required (array of )

  List of orgowners and orgmembers who's children should be included in the organizations membershi or ownership hierarchy

Example:

    {
      "globalid": "greenitglobe",
      "publicKeys": [
        "1A9WWh6iAE4RZGN7axy6xZbuWuLknqWLrV"
      ],
      "dns": [
        "greenitglobe.com"
      ],
      "owners": [
        "user1",
        "user2",
        "user3"
      ],
      "members": [
        "user4"
      ],
      "orgowners": [
        "organization1"
      ],
      "orgmembers": [
        "organization2",
        "organization3"
      ],
      "includes": [
        "admin.greenitglobe.com"
      ],
      "requiredscopes": [
        {
          "scope": "user:name",
          "accessscopes": [
            "organization:owner",
            "organization:member"
          ]
        },
        {
          "scope": "user:email:personal email",
          "accessscopes": [
            "organization:owner"
          ]
        }
      ],
      "includesuborgsof": [
        "organization2"
      ]
    }

## HTTP status code 404

Member not found

## HTTP status code 422

Maximum amount of invites reached

### Body

Media type: application/json

Type: object

Properties

- error: required (string)

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### post /organizations/{globalid}/members

Invite someone to become member of an organization.

Secured by oauth_2_0 with scopes:

- organization:owner

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- globalid: required (string)

### Query Parameters

- invitenotification: (string)

  Set to `none` to suppress sending an sms or email

### Body

Media type: application/json

Type: object

Properties

- searchstring: required (string)

## HTTP status code 201

Member assigned successfully

### Body

Media type: application/json

Type: object

Properties

- organization: required (string)
- user: required (string)
- role: required (one of owner, member, orgowner, orgmember)
- created: (datetime)
- status: required (one of pending, accepted, rejected)
- method: required (one of website, email, phone)
- emailaddress: required (string)
- phonenumber: required (string)
- isorganization: required (boolean)

Example:

    {
      "organization": "mycoolsoccerclub",
      "user": "bob",
      "role": "owner",
      "created": "2016-02-28T16:41:41.090Z",
      "status": "pending",
      "method": "website",
      "emailaddress": "",
      "phonenumber": "",
      "isorganization": false
    }

## HTTP status code 404

Not found

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### /organizations/{globalid}/members/{username} delete

delete

Remove a member from an organization.

#### delete /organizations/{globalid}/members/{username}

Remove a member from an organization.

Secured by oauth_2_0

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- globalid: required (string)
- username: required (string)

## HTTP status code 204

Member deleted successfully

## HTTP status code 404

The user or the organization does not exist.

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### /organizations/{globalid}/owners post

post

Invite someone to become owner of an organization.

#### post /organizations/{globalid}/owners

Invite someone to become owner of an organization.

Secured by oauth_2_0 with scopes:

- organization:owner

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- globalid: required (string)

### Query Parameters

- invitenotification: (string)

  Set to `none` to suppress sending an sms or email

### Body

Media type: application/json

Type: object

Properties

- username: required (string)

  Used when assigning a member to an organization.

Example:

    {
      "username": "bob"
    }

## HTTP status code 201

Invite created successfully

### Body

Media type: application/json

Type: object

Properties

- organization: required (string)
- user: required (string)
- role: required (one of owner, member, orgowner, orgmember)
- created: (datetime)
- status: required (one of pending, accepted, rejected)
- method: required (one of website, email, phone)
- emailaddress: required (string)
- phonenumber: required (string)
- isorganization: required (boolean)

Example:

    {
      "organization": "mycoolsoccerclub",
      "user": "bob",
      "role": "owner",
      "created": "2016-02-28T16:41:41.090Z",
      "status": "pending",
      "method": "website",
      "emailaddress": "",
      "phonenumber": "",
      "isorganization": false
    }

## HTTP status code 404

The user or the organization does not exist.

## HTTP status code 409

The user already is an owner.

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### /organizations/{globalid}/owners/{username} delete

delete

Remove an owner from organization

#### delete /organizations/{globalid}/owners/{username}

Remove an owner from organization

Secured by oauth_2_0

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- globalid: required (string)
- username: required (string)

## HTTP status code 204

Owner removed successfully

## HTTP status code 401

Unauthorized

## HTTP status code 404

The user or the organization does not exist.

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### /organizations/{globalid}/contracts get post

get

Get the contracts where the organization is 1 of the parties. Order descending by date.

post

Create a new contract.

#### get /organizations/{globalid}/contracts

Get the contracts where the organization is 1 of the parties. Order descending by date.

Secured by oauth_2_0 with scopes:

- organization:owner

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- globalid: required (string)

### Query Parameters

- includeExpired: (boolean)

  Include the expired contracts, by default only the active contracts are returned.

- start: (integer)

  Start offset, useful for paging. Default is `0`.

- max: (integer - maximum: 250)

  Max page size, useful for paging. Default is `50`.

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### post /organizations/{globalid}/contracts

Create a new contract.

Secured by oauth_2_0 with scopes:

- organization:owner

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- globalid: required (string)

### Body

Media type: application/json

Type: object

Properties

- parties: required (array of Party)

  Items: Party

  - type: required (string)
  - name: required (string)
- content: required (string)
- contractType: required (string - maxLength: 40)

  Free field to be used for tags by the party creating a contract

- invalidates: (array of )

  list of contractId's this contract invalidates.

- extends: (array of )

  list of contractId's this contract is an extension upon

- expires: required (datetime)
- contractId: required (string)

  The contractId is the hash of the parties, the content, the contractType, and the expiration date. To calculate the hash, take the json representation of the contract without the id and signatures, trim the newlines or spaces (except when they appear in the values) and encode in utf8. From this result, take a SHA256 followed by a RIPEMD160, next base58CheckEncode the result with a 0x00 prefix.

- signatures: required (array of Signature)

  Items: Signature

  - signedBy: required (string)
  - date: required (datetime)
  - publicKey: required (string)

    The public key used

  - signature: required (string)

## HTTP status code 201

### Body

Media type: application/json

Type: object

Properties

- parties: required (array of Party)

  Items: Party

  - type: required (string)
  - name: required (string)
- content: required (string)
- contractType: required (string - maxLength: 40)

  Free field to be used for tags by the party creating a contract

- invalidates: (array of )

  list of contractId's this contract invalidates.

- extends: (array of )

  list of contractId's this contract is an extension upon

- expires: required (datetime)
- contractId: required (string)

  The contractId is the hash of the parties, the content, the contractType, and the expiration date. To calculate the hash, take the json representation of the contract without the id and signatures, trim the newlines or spaces (except when they appear in the values) and encode in utf8. From this result, take a SHA256 followed by a RIPEMD160, next base58CheckEncode the result with a 0x00 prefix.

- signatures: required (array of Signature)

  Items: Signature

  - signedBy: required (string)
  - date: required (datetime)
  - publicKey: required (string)

    The public key used

  - signature: required (string)

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### /organizations/{globalid}/invitations get

get

Get the list of pending invitations for users to join this organization.

#### get /organizations/{globalid}/invitations

Get the list of pending invitations for users to join this organization.

Secured by oauth_2_0 with scopes:

- organization:owner

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- globalid: required (string)

### Query Parameters

- status: (one of pending, accepted, rejected - default: pending)

  What status to filter the invitations on. Possible values are pending, accepted and rejected. When not provided, defaults to pending.

## HTTP status code 200

### Body

Media type: application/json

Type: array of JoinOrganizationInvitation

Items: JoinOrganizationInvitation

- organization: required (string)
- user: required (string)
- role: required (one of owner, member, orgowner, orgmember)
- created: (datetime)
- status: required (one of pending, accepted, rejected)
- method: required (one of website, email, phone)
- emailaddress: required (string)
- phonenumber: required (string)
- isorganization: required (boolean)

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### /organizations/{globalid}/invitations/{username} delete

delete

Cancel a pending invitation.

#### delete /organizations/{globalid}/invitations/{username}

Cancel a pending invitation.

Secured by oauth_2_0

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- globalid: required (string)
- username: required (string)

## HTTP status code 204

Invitation cancelled

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### /organizations/{globalid}/apikeys get post

get

Get the list of active api keys.

post

Create a new API Key, a secret itself should not be provided, it will be generated serverside.

#### get /organizations/{globalid}/apikeys

Get the list of active api keys.

Secured by oauth_2_0 with scopes:

- organization:owner

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- globalid: required (string)

## HTTP status code 200

### Body

Media type: application/json

Type: array of APIKeyLabel

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### post /organizations/{globalid}/apikeys

Create a new API Key, a secret itself should not be provided, it will be generated serverside.

Secured by oauth_2_0 with scopes:

- organization:owner

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- globalid: required (string)

### Body

Media type: application/json

Type: object

Properties

- label: required (string - minLength: 2 - maxLength: 50 - pattern: ^[a-zA-Z\d\-_\s]{2,50}$)
- callbackURL: (string - maxLength: 250)
- clientCredentialsGrantType: (boolean - default: false)

  Indicates if this key may be used in a client credentials oauth2 flow.

- secret: (string - maxLength: 250)

## HTTP status code 201

### Body

Media type: application/json

Type: object

Properties

- label: required (string - minLength: 2 - maxLength: 50 - pattern: ^[a-zA-Z\d\-_\s]{2,50}$)
- callbackURL: (string - maxLength: 250)
- clientCredentialsGrantType: (boolean - default: false)

  Indicates if this key may be used in a client credentials oauth2 flow.

- secret: (string - maxLength: 250)

## HTTP status code 409

Label is already used.

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### /organizations/{globalid}/apikeys/{label} get put delete

get

Get an api key from an organization

put

Updates the label or other properties of a key.

delete

Removes an API key

#### get /organizations/{globalid}/apikeys/{label}

Get an api key from an organization

Secured by oauth_2_0

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- globalid: required (string)
- label: required (string)

## HTTP status code 200

### Body

Media type: application/json

Type: object

Properties

- label: required (string - minLength: 2 - maxLength: 50 - pattern: ^[a-zA-Z\d\-_\s]{2,50}$)
- callbackURL: (string - maxLength: 250)
- clientCredentialsGrantType: (boolean - default: false)

  Indicates if this key may be used in a client credentials oauth2 flow.

- secret: (string - maxLength: 250)

## HTTP status code 404

No API key with this label found

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### put /organizations/{globalid}/apikeys/{label}

Updates the label or other properties of a key.

Secured by oauth_2_0

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- globalid: required (string)
- label: required (string)

### Body

Media type: application/json

Type: object

Properties

- type: required (object)
  - label: required (string - minLength: 2 - maxLength: 50 - pattern: ^[a-zA-Z\d\-_\s]{2,50}$)
  - callbackURL: (string - maxLength: 250)
  - clientCredentialsGrantType: (boolean - default: false)

    Indicates if this key may be used in a client credentials oauth2 flow.

  - secret: (string - maxLength: 250)

## HTTP status code 200

Updated

## HTTP status code 404

Apikey not found

## HTTP status code 409

New label is already used

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### delete /organizations/{globalid}/apikeys/{label}

Removes an API key

Secured by oauth_2_0

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- globalid: required (string)
- label: required (string)

## HTTP status code 204

API key removed

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### /organizations/{globalid}/registry post get

post

Adds a RegistryEntry to the organization's registry, if the key is already used, it is overwritten.

get

Lists the RegistryEntries in an organization's registry.

#### post /organizations/{globalid}/registry

Adds a RegistryEntry to the organization's registry, if the key is already used, it is overwritten.

Secured by oauth_2_0 with scopes:

- user:admin

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- globalid: required (string)

### Body

Media type: application/json

Type: object

Properties

- Key: required (string - minLength: 1 - maxLength: 256)
- Value: required (string - maxLength: 1024)

## HTTP status code 201

Added the RegistryEntry to the user's registry

### Body

Media type: application/json

Type: object

Properties

- Key: required (string - minLength: 1 - maxLength: 256)
- Value: required (string - maxLength: 1024)

## HTTP status code 409

Label is already used.

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### get /organizations/{globalid}/registry

Lists the RegistryEntries in an organization's registry.

Secured by oauth_2_0 with scopes:

- user:admin

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- globalid: required (string)

## HTTP status code 200

List of Registry Entries

### Body

Media type: application/json

Type: array of RegistryEntry

Items: RegistryEntry

- Key: required (string - minLength: 1 - maxLength: 256)
- Value: required (string - maxLength: 1024)

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### /organizations/{globalid}/registry/{key} delete get

delete

Removes a RegistryEntry from the organization's registry

get

Get a RegistryEntry from the organization's registry.

#### delete /organizations/{globalid}/registry/{key}

Removes a RegistryEntry from the organization's registry

Secured by oauth_2_0 with scopes:

- user:admin

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- globalid: required (string)
- key: required (string)

## HTTP status code 204

RegistryEntry removed.

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### get /organizations/{globalid}/registry/{key}

Get a RegistryEntry from the organization's registry.

Secured by oauth_2_0

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- globalid: required (string)
- key: required (string)

## HTTP status code 200

Registry Entry

### Body

Media type: application/json

Type: object

Properties

- Key: required (string - minLength: 1 - maxLength: 256)
- Value: required (string - maxLength: 1024)

## HTTP status code 404

Not found

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### /organizations/{globalid}/dns post

post

Creates a new DNS name associated with an organization

#### post /organizations/{globalid}/dns

Creates a new DNS name associated with an organization

Secured by oauth_2_0 with scopes:

- organization:owner

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- globalid: required (string)

### Body

Media type: application/json

Type: object

Properties

- name: required (string - minLength: 4 - maxLength: 250 - pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]{1,61}[a-zA-Z0-9](?:\.[a-zA-Z]{2,})+$)

## HTTP status code 201

### Body

Media type: application/json

Type: object

Properties

- name: required (string - minLength: 4 - maxLength: 250 - pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]{1,61}[a-zA-Z0-9](?:\.[a-zA-Z]{2,})+$)

## HTTP status code 409

DNS name is already used.

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### /organizations/{globalid}/dns/{dnsname} put delete

put

Updates an existing DNS name associated with an organization

delete

Removes a DNS name associated with an organization

#### put /organizations/{globalid}/dns/{dnsname}

Updates an existing DNS name associated with an organization

Secured by oauth_2_0

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- globalid: required (string)
- dnsname: required (string)

### Body

Media type: application/json

Type: object

Properties

- name: required (string - minLength: 4 - maxLength: 250 - pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]{1,61}[a-zA-Z0-9](?:\.[a-zA-Z]{2,})+$)

## HTTP status code 200

Renamed

## HTTP status code 404

DNS Name not found

## HTTP status code 409

New DNS name is already used

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### delete /organizations/{globalid}/dns/{dnsname}

Removes a DNS name associated with an organization

Secured by oauth_2_0

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- globalid: required (string)
- dnsname: required (string)

## HTTP status code 204

DNS name removed

## HTTP status code 404

DNS Name not found

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### /organizations/{globalid}/tree get

get

Tree structure of all suborganizations

#### get /organizations/{globalid}/tree

Tree structure of all suborganizations

Secured by oauth_2_0 with scopes:

- organization:owner
- organization:member

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- globalid: required (string)

## HTTP status code 200

### Body

Media type: application/json

Type: array of OrganizationTreeItem

Items: OrganizationTreeItem

- globalid: required (string)
- children: required (array of )

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### /organizations/{globalid}/requiredscopes post

post

Adds a required scope

#### post /organizations/{globalid}/requiredscopes

Adds a required scope

Secured by oauth_2_0 with scopes:

- organization:owner

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- globalid: required (string)

### Body

Media type: application/json

Type: object

Properties

- scope: required (string - maxLength: 1024)

  Scope which should be shared with an organization

- accessscopes: required (array of )

  Which users can see the shared information.

## HTTP status code 201

Added the required scope to the organization.

## HTTP status code 409

The required scope conflicts with an existing one

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### /organizations/{globalid}/requiredscopes/{requiredscope} put delete

put

Updates a required scope

delete

Deletes a required scope

#### put /organizations/{globalid}/requiredscopes/{requiredscope}

Updates a required scope

Secured by oauth_2_0

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- globalid: required (string)
- requiredscope: required (string)

## HTTP status code 204

Updated the required scope

## HTTP status code 404

The required scope was not found.

## HTTP status code 409

The new required scope conflicts with an existing one

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden

#### delete /organizations/{globalid}/requiredscopes/{requiredscope}

Deletes a required scope

Secured by oauth_2_0

OAuth2 is a protocol that lets external apps request authorization to private details in a user's account without getting their password.

### URI Parameters

- globalid: required (string)
- requiredscope: required (string)

## HTTP status code 204

Deleted the required scope

## HTTP status code 404

The required scope was not found.

# Secured by oauth_2_0

### Headers

- Authorization: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "access_token" query string parameter.

### Query Parameters

- access_token: required (string)

  Used to send a valid OAuth 2 access token. Do not use together with the "Authorization" header

## HTTP status code 401

Unauthorized

## HTTP status code 403

Forbidden