{ "opencollection": "1.0.0", "info": { "name": "OpenProject API V3 (Stable) Actions & Capabilities Principals API", "version": "3" }, "request": { "auth": { "type": "basic", "username": "{{username}}", "password": "{{password}}" } }, "items": [ { "info": { "name": "Principals", "type": "folder" }, "items": [ { "info": { "name": "List placehoder users", "type": "http" }, "http": { "method": "GET", "url": "https://qa.openproject-edge.com/api/v3/placeholder_users", "params": [ { "name": "filters", "value": "[{ \"name\": { \"operator\": \"~\", \"values\": [\"Darth\"] } }]", "type": "query", "description": "JSON specifying filter conditions.\nAccepts the same format as returned by the [queries](https://www.openproject.org/docs/api/endpoints/queries/) endpoint.\nCurrently supported filters are:\n\n- name: filters placeholder users by the name.\n- group: filters placeholder by the group it is contained in.\n- status: filters placeholder by the status it has." }, { "name": "select", "value": "total,elements/name,elements/self,self", "type": "query", "description": "Comma separated list of properties to include." } ] }, "docs": "List all placeholder users. This can only be accessed if the requesting user has the global permission\n`manage_placeholder_user` or `manage_members` in any project." }, { "info": { "name": "Create placeholder user", "type": "http" }, "http": { "method": "POST", "url": "https://qa.openproject-edge.com/api/v3/placeholder_users", "body": { "type": "json", "data": "{}" } }, "docs": "Creates a new placeholder user. Only administrators and users with `manage_placeholder_user` global permission are\nallowed to do so. When calling this endpoint the client provides a single object, containing at least the\nproperties and links that are required, in the body." }, { "info": { "name": "View placeholder user", "type": "http" }, "http": { "method": "GET", "url": "https://qa.openproject-edge.com/api/v3/placeholder_users/:id", "params": [ { "name": "id", "value": "1", "type": "path", "description": "The placeholder user id" } ] }, "docs": "Return the placeholder user resource." }, { "info": { "name": "Update placeholder user", "type": "http" }, "http": { "method": "PATCH", "url": "https://qa.openproject-edge.com/api/v3/placeholder_users/:id", "params": [ { "name": "id", "value": "1", "type": "path", "description": "Placeholder user id" } ], "body": { "type": "json", "data": "{}" } }, "docs": "Updates the placeholder user's writable attributes.\nWhen calling this endpoint the client provides a single object, containing at least the properties and links\nthat are required, in the body." }, { "info": { "name": "Delete placeholder user", "type": "http" }, "http": { "method": "DELETE", "url": "https://qa.openproject-edge.com/api/v3/placeholder_users/:id", "params": [ { "name": "id", "value": "1", "type": "path", "description": "Placeholder user id" } ] }, "docs": "Set the specified placeholder user to deleted status." }, { "info": { "name": "List principals", "type": "http" }, "http": { "method": "GET", "url": "https://qa.openproject-edge.com/api/v3/principals", "params": [ { "name": "filters", "value": "[{ \"type\": { \"operator\": \"=\", \"values\": [\"User\"] } }]", "type": "query", "description": "JSON specifying filter conditions.\nAccepts the same format as returned by the [queries](https://www.openproject.org/docs/api/endpoints/queries/) endpoint.\nCurrently supported filters are:\n\n- type: filters principals by their type (*User*, *Group*, *PlaceholderUser*).\n- member: filters principals by the projects they are members in.\n- name: filters principals by the user or group name.\n- any_name_attribute: filters principals by the user or group first- and last name, email or login.\n- status: filters principals by their status number (active = *1*, registered = *2*, locked = *3*, invited = *4*)" }, { "name": "select", "value": "total,elements/name,elements/self,self", "type": "query", "description": "Comma separated list of properties to include." } ] }, "docs": "List all principals. The client can choose to filter the principals similar to how work packages are filtered. In\naddition to the provided filters, the server will reduce the result set to only contain principals who are members\nin projects the client is allowed to see." }, { "info": { "name": "List Users", "type": "http" }, "http": { "method": "GET", "url": "https://qa.openproject-edge.com/api/v3/users", "params": [ { "name": "offset", "value": "25", "type": "query", "description": "Page number inside the requested collection." }, { "name": "pageSize", "value": "25", "type": "query", "description": "Number of elements to display per page." }, { "name": "filters", "value": "[{ \"status\": { \"operator\": \"=\", \"values\": [\"invited\"] } }, { \"group\": { \"operator\": \"=\", \"values\": [\"1\"] } }, { \"name\": { \"operator\": \"=\", \"values\": [\"h.wurst@openproject.com\"] } }]", "type": "query", "description": "JSON specifying filter conditions.\nAccepts the same format as returned by the [queries](https://www.openproject.org/docs/api/endpoints/queries/)\nendpoint. Currently supported filters are:\n\n+ status: Status the user has\n\n+ group: Name of the group in which to-be-listed users are members.\n\n+ name: Filter users in whose first or last names, or email addresses the given string occurs.\n\n+ login: User's login" }, { "name": "sortBy", "value": "[[\"status\", \"asc\"]]", "type": "query", "description": "JSON specifying sort criteria.\nAccepts the same format as returned by the [queries](https://www.openproject.org/docs/api/endpoints/queries/) endpoint." }, { "name": "select", "value": "total,elements/name,elements/self,self", "type": "query", "description": "Comma separated list of properties to include." } ] }, "docs": "Lists users. Only administrators or users with the following global permission can access this resource:\n- `manage_user`" }, { "info": { "name": "Create User", "type": "http" }, "http": { "method": "POST", "url": "https://qa.openproject-edge.com/api/v3/users", "body": { "type": "json", "data": "{}" } }, "docs": "Creates a new user. Only administrators and users with manage_user global permission are allowed to do so.\nWhen calling this endpoint the client provides a single object, containing at least the properties and links that are required, in the body.\n\nValid values for `status`:\n\n1) \"active\" - In this case a password has to be provided in addition to the other attributes.\n\n2) \"invited\" - In this case nothing but the email address is required. The rest is optional. An invitation will be sent to the u" }, { "info": { "name": "View user", "type": "http" }, "http": { "method": "GET", "url": "https://qa.openproject-edge.com/api/v3/users/:id", "params": [ { "name": "id", "value": "1", "type": "path", "description": "User id. Use `me` to reference current user, if any." } ] }, "docs": "View user" }, { "info": { "name": "Update user", "type": "http" }, "http": { "method": "PATCH", "url": "https://qa.openproject-edge.com/api/v3/users/:id", "params": [ { "name": "id", "value": "1", "type": "path", "description": "User id. Use `me` to reference current user, if any." } ], "body": { "type": "json", "data": "{}" } }, "docs": "Updates the user's writable attributes.\nWhen calling this endpoint the client provides a single object, containing at least the properties and links that are required, in the body.\n\nPassword updates for self-service account changes require both `password` and `currentPassword`." }, { "info": { "name": "Delete user", "type": "http" }, "http": { "method": "DELETE", "url": "https://qa.openproject-edge.com/api/v3/users/:id", "params": [ { "name": "id", "value": "1", "type": "path", "description": "User id. Use `me` to reference current user, if any." } ] }, "docs": "Permanently deletes the specified user account." } ] } ], "bundled": true }