{
  "opencollection": "1.0.0",
  "info": {
    "name": "NetBird REST Accounts Users API",
    "version": "0.0.1"
  },
  "request": {
    "auth": {
      "type": "bearer",
      "token": "{{bearerToken}}"
    }
  },
  "items": [
    {
      "info": {
        "name": "Users",
        "type": "folder"
      },
      "items": [
        {
          "info": {
            "name": "List all Users",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "https://api.netbird.io/api/users",
            "params": [
              {
                "name": "service_user",
                "value": "",
                "type": "query",
                "description": "Filters users and returns either regular users or service users"
              }
            ],
            "auth": {
              "type": "bearer",
              "token": "{{bearerToken}}"
            }
          },
          "docs": "Returns a list of all users"
        },
        {
          "info": {
            "name": "Create a User",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "https://api.netbird.io/api/users",
            "body": {
              "type": "json",
              "data": "{}"
            },
            "auth": {
              "type": "bearer",
              "token": "{{bearerToken}}"
            }
          },
          "docs": "Creates a new service user or sends an invite to a regular user"
        },
        {
          "info": {
            "name": "Update a User",
            "type": "http"
          },
          "http": {
            "method": "PUT",
            "url": "https://api.netbird.io/api/users/:userId",
            "params": [
              {
                "name": "userId",
                "value": "",
                "type": "path",
                "description": "The unique identifier of a user"
              }
            ],
            "body": {
              "type": "json",
              "data": "{}"
            },
            "auth": {
              "type": "bearer",
              "token": "{{bearerToken}}"
            }
          },
          "docs": "Update information about a User"
        },
        {
          "info": {
            "name": "Delete a User",
            "type": "http"
          },
          "http": {
            "method": "DELETE",
            "url": "https://api.netbird.io/api/users/:userId",
            "params": [
              {
                "name": "userId",
                "value": "",
                "type": "path",
                "description": "The unique identifier of a user"
              }
            ],
            "auth": {
              "type": "bearer",
              "token": "{{bearerToken}}"
            }
          },
          "docs": "This method removes a user from accessing the system. For this leaves the IDP user intact unless the `--user-delete-from-idp` is passed to management startup."
        },
        {
          "info": {
            "name": "Resend user invitation",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "https://api.netbird.io/api/users/:userId/invite",
            "params": [
              {
                "name": "userId",
                "value": "",
                "type": "path",
                "description": "The unique identifier of a user"
              }
            ],
            "auth": {
              "type": "bearer",
              "token": "{{bearerToken}}"
            }
          },
          "docs": "Resend user invitation"
        },
        {
          "info": {
            "name": "Approve user",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "https://api.netbird.io/api/users/:userId/approve",
            "params": [
              {
                "name": "userId",
                "value": "",
                "type": "path",
                "description": "The unique identifier of a user"
              }
            ],
            "auth": {
              "type": "bearer",
              "token": "{{bearerToken}}"
            }
          },
          "docs": "Approve a user that is pending approval"
        },
        {
          "info": {
            "name": "Reject user",
            "type": "http"
          },
          "http": {
            "method": "DELETE",
            "url": "https://api.netbird.io/api/users/:userId/reject",
            "params": [
              {
                "name": "userId",
                "value": "",
                "type": "path",
                "description": "The unique identifier of a user"
              }
            ],
            "auth": {
              "type": "bearer",
              "token": "{{bearerToken}}"
            }
          },
          "docs": "Reject a user that is pending approval by removing them from the account"
        },
        {
          "info": {
            "name": "Change user password",
            "type": "http"
          },
          "http": {
            "method": "PUT",
            "url": "https://api.netbird.io/api/users/:userId/password",
            "params": [
              {
                "name": "userId",
                "value": "",
                "type": "path",
                "description": "The unique identifier of a user"
              }
            ],
            "body": {
              "type": "json",
              "data": "{}"
            },
            "auth": {
              "type": "bearer",
              "token": "{{bearerToken}}"
            }
          },
          "docs": "Change the password for a user. Only available when embedded IdP is enabled. Users can only change their own password."
        },
        {
          "info": {
            "name": "Retrieve current user",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "https://api.netbird.io/api/users/current",
            "auth": {
              "type": "bearer",
              "token": "{{bearerToken}}"
            }
          },
          "docs": "Get information about the current user"
        },
        {
          "info": {
            "name": "List user invites",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "https://api.netbird.io/api/users/invites",
            "auth": {
              "type": "bearer",
              "token": "{{bearerToken}}"
            }
          },
          "docs": "Lists all pending invites for the account. Only available when embedded IdP is enabled."
        },
        {
          "info": {
            "name": "Create a user invite",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "https://api.netbird.io/api/users/invites",
            "body": {
              "type": "json",
              "data": "{}"
            },
            "auth": {
              "type": "bearer",
              "token": "{{bearerToken}}"
            }
          },
          "docs": "Creates an invite link for a new user. Only available when embedded IdP is enabled. The user is not created until they accept the invite."
        },
        {
          "info": {
            "name": "Delete a user invite",
            "type": "http"
          },
          "http": {
            "method": "DELETE",
            "url": "https://api.netbird.io/api/users/invites/:inviteId",
            "params": [
              {
                "name": "inviteId",
                "value": "",
                "type": "path",
                "description": "The ID of the invite to delete"
              }
            ],
            "auth": {
              "type": "bearer",
              "token": "{{bearerToken}}"
            }
          },
          "docs": "Deletes a pending invite. Only available when embedded IdP is enabled."
        },
        {
          "info": {
            "name": "Regenerate a user invite",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "https://api.netbird.io/api/users/invites/:inviteId/regenerate",
            "params": [
              {
                "name": "inviteId",
                "value": "",
                "type": "path",
                "description": "The ID of the invite to regenerate"
              }
            ],
            "body": {
              "type": "json",
              "data": "{}"
            },
            "auth": {
              "type": "bearer",
              "token": "{{bearerToken}}"
            }
          },
          "docs": "Regenerates an invite link for an existing invite. Invalidates the previous token and creates a new one."
        },
        {
          "info": {
            "name": "Get invite information",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "https://api.netbird.io/api/users/invites/:token",
            "params": [
              {
                "name": "token",
                "value": "",
                "type": "path",
                "description": "The invite token"
              }
            ]
          },
          "docs": "Retrieves public information about an invite. This endpoint is unauthenticated and protected by the token itself."
        },
        {
          "info": {
            "name": "Accept an invite",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "https://api.netbird.io/api/users/invites/:token/accept",
            "params": [
              {
                "name": "token",
                "value": "",
                "type": "path",
                "description": "The invite token"
              }
            ],
            "body": {
              "type": "json",
              "data": "{}"
            }
          },
          "docs": "Accepts an invite and creates the user with the provided password. This endpoint is unauthenticated and protected by the token itself."
        }
      ]
    }
  ],
  "bundled": true
}