Talend workspaces :: permissions API

The workspaces :: permissions API from Talend — 3 operation(s) for workspaces :: permissions.

Operations 8

GET /security/workspaces/{workspaceId}/users/{userId}/permissions Read a workspace permission #
PUT /security/workspaces/{workspaceId}/users/{userId}/permissions Update a workspace permission #
POST /security/workspaces/{workspaceId}/users/{userId}/permissions Create a workspace permission #
DELETE /security/workspaces/{workspaceId}/users/{userId}/permissions Delete a workspace permission #
PUT /security/permissions/batch Update sets of workspace permissions #
POST /security/permissions/batch Create sets of workspace permissions #
DELETE /security/permissions/batch Delete workspace permissions #
GET /security/permissions Retrieve all workspace permissions according to search criteria #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/talend-workspaces-permissions-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

talend-workspaces-permissions-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: 'Workspace Permissions workspaces :: permissions API'
  description: Control and manage your users detailed permissions upon Workspaces and Engines.
  contact: {}
  version: 2021-03
servers:
- url: https://api.eu.cloud.talend.com
  description: URL for the AWS Europe region
  x-talend:
    isPublished: true
- url: https://api.ap.cloud.talend.com
  description: URL for the AWS Asia Pacific region
  x-talend:
    isPublished: true
- url: https://api.us.cloud.talend.com
  description: URL for the AWS United States East region
  x-talend:
    isPublished: true
- url: https://api.au.cloud.talend.com
  description: URL for the AWS Australia region
  x-talend:
    isPublished: true
- url: https://api.us-west.cloud.talend.com
  description: URL for the Azure United States West region
  x-talend:
    isPublished: true
security:
- Public: []
tags:
- name: 'workspaces :: permissions'
paths:
  /security/workspaces/{workspaceId}/users/{userId}/permissions:
    parameters:
    - $ref: '#/components/parameters/workspaceId'
    - $ref: '#/components/parameters/userId'
    x-talend:
      section: Unitary management
    get:
      tags:
      - 'workspaces :: permissions'
      summary: Read a workspace permission
      description: Read a permission of a user on a workspace.
      operationId: getWorkspacePermission
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Permission'
        '400':
          description: Parameters not valid
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '403':
          description: Not authorized to change permission
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '404':
          description: Workspace or user not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
      security:
      - Public: []
    put:
      tags:
      - 'workspaces :: permissions'
      summary: Update a workspace permission
      description: Update a permission of a user on a workspace.
      operationId: updateWorkspacePermissions
      requestBody:
        description: Rights to update on the permission
        content:
          application/json:
            schema:
              type: array
              description: Rights to update on the permission
              items:
                type: string
                enum:
                - AUTHOR
                - EXECUTE
                - VIEW
                - PUBLISH
              uniqueItems: true
              minItems: 1
            example: '["AUTHOR", "EXECUTE"]'
      responses:
        '204':
          description: No Content
        '400':
          description: Parameters not valid
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '403':
          description: Not authorized to update the permission
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '404':
          description: The permission to update or workspace doesn’t exist
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
      security:
      - Public: []
    post:
      tags:
      - 'workspaces :: permissions'
      summary: Create a workspace permission
      description: Create a permission of a user on a workspace.
      operationId: createWorkspacePermissions
      requestBody:
        description: Rights to add on the permission
        content:
          application/json:
            schema:
              type: array
              description: Rights to add on the permission
              items:
                type: string
                enum:
                - AUTHOR
                - EXECUTE
                - VIEW
                - PUBLISH
              uniqueItems: true
              minItems: 1
            example: '["AUTHOR", "EXECUTE"]'
      responses:
        '201':
          description: Permission successfully created
        '400':
          description: Parameters not valid
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '403':
          description: Not authorized to update the permission
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '404':
          description: The workspace or the user does not exist
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '409':
          description: The permission already exists for workspace
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
      security:
      - Public: []
    delete:
      tags:
      - 'workspaces :: permissions'
      summary: Delete a workspace permission
      description: Delete a permission of a user on a workspace.
      operationId: deleteWorkspacePermissions
      responses:
        '204':
          description: No Content
        '400':
          description: Parameters not valid
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '403':
          description: Not authorized to delete permission
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '404':
          description: The permission to update or workspace doesn’t exist
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
      security:
      - Public: []
  /security/permissions/batch:
    x-talend:
      section: Provisioning and Mass management
    put:
      tags:
      - 'workspaces :: permissions'
      summary: Update sets of workspace permissions
      description: Update sets of workspace permissions on the current system. Allows to upload list of workspace permissions to be updated.Update actions will be applied in the same order as defined in the list
      operationId: updatePermissions
      requestBody:
        description: The collection of permissions to update.
        content:
          application/json:
            schema:
              type: array
              description: The collection of permissions to update.
              items:
                $ref: '#/components/schemas/Permission'
        required: true
      responses:
        '204':
          description: All changes on Permissions were successful
        '207':
          description: Execution result detailed status on elementary changes rejected.
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/PermissionResult'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '403':
          description: Not authorized to change permissions
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '404':
          description: The workspace id or the user does not exist
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '500':
          description: Status 500
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
      security:
      - Public: []
    post:
      tags:
      - 'workspaces :: permissions'
      summary: Create sets of workspace permissions
      description: Create sets of workspace permissions on the current system. Allows to upload list of workspace permissions to be created.Creation actions will be applied in the same order as defined in the list
      operationId: createPermissions
      requestBody:
        description: The collection of permissions to create.
        content:
          application/json:
            schema:
              type: array
              description: The collection of permissions to create.
              items:
                $ref: '#/components/schemas/Permission'
        required: true
      responses:
        '204':
          description: All changes on Permissions were successful
        '207':
          description: Execution result detailed status on elementary changes rejected.
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/PermissionResult'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '403':
          description: Not authorized to change permissions
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '404':
          description: The workspace id or the user does not exist
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '500':
          description: Status 500
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
      security:
      - Public: []
    delete:
      tags:
      - 'workspaces :: permissions'
      summary: Delete workspace permissions
      description: 'Remove all permissions where user id is one from specified ones with request AND workspace is one from specified ones with request.

        Special case: empty collection for users means that permissions for all users and specified workspaces will be deleted (and vise versa).'
      operationId: deletePermissions
      parameters:
      - name: userIds
        in: query
        description: User ids list used to compute permission intersections with specified workspaces.
        schema:
          type: array
          description: User ids list used to compute permission intersections with specified workspaces.
          items:
            type: string
      - name: workspaceIds
        in: query
        description: Workspace ids list used to compute permission intersections with specified users.
        schema:
          type: array
          description: Workspace ids list used to compute permission intersections with specified users.
          items:
            type: string
      responses:
        '204':
          description: All changes on Permissions were successful
        '207':
          description: Execution result detailed status on elementary changes rejected.
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/PermissionDeleteResult'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '403':
          description: Not authorized to change permissions
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '404':
          description: The workspace id or the user does not exist
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '500':
          description: Status 500
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
      security:
      - Public: []
  /security/permissions:
    x-talend:
      section: Provisioning and Mass management
    get:
      tags:
      - 'workspaces :: permissions'
      summary: Retrieve all workspace permissions according to search criteria
      description: 'It retrieves all workspace permissions according to several criteria:


        * environment : One environment of the account

        * workspace : One workspace of one environment of the account

        * user : One user of the account'
      operationId: getPermissions
      parameters:
      - name: workspaceId
        in: query
        required: false
        description: The workspace id
        schema:
          type: string
          description: The workspace id
        example: 6089228181ef4423736e47a9
      - name: environmentId
        in: query
        required: false
        description: The environment id
        schema:
          type: string
          description: The environment id
        example: 6089228181ef4423736e47a8
      - name: userId
        in: query
        required: false
        description: The user id
        schema:
          type: string
          description: The user id
        example: b9e10a3f-9d68-44bb-862f-b2aa56dc7191
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Permission'
        '400':
          description: Invalid parameters
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '404':
          description: The environment id or the workspace id or the user id does not exist
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
      security:
      - Public: []
components:
  schemas:
    PermissionResult:
      type: object
      properties:
        status:
          type: integer
          format: int32
        message:
          type: string
        permission:
          $ref: '#/components/schemas/Permission'
      x-talend:
        section: Commons
    Permission:
      type: object
      required:
      - permissions
      - userId
      - workspaceId
      properties:
        workspaceId:
          type: string
          description: The workspace id
          example: 57f64991e4b0b689a64feed2
        userId:
          type: string
          description: The user id
          example: b9e10a3f-9d68-44bb-862f-b2aa56dc7191
        permissions:
          type: array
          description: The list of permission types
          items:
            type: string
            enum:
            - AUTHOR
            - EXECUTE
            - VIEW
            - PUBLISH
          uniqueItems: true
      x-talend:
        section: Commons
    PermissionId:
      type: object
      required:
      - userId
      - workspaceId
      properties:
        workspaceId:
          type: string
          description: The workspace id
          example: 57f64991e4b0b689a64feed2
        userId:
          type: string
          description: The user id
          example: 9f1634e7-d791-4be4-9aed-2970f8d804dd
      x-talend:
        section: Commons
    ErrorResponse:
      type: object
      required:
      - status
      description: Error response object
      properties:
        status:
          type: integer
          description: HTTP status code
          example: 401
        message:
          type: string
          description: Info about error for user.
          example: Forbidden
        detail:
          type: string
          description: Info about error for developer.
          example: Token authorization is required for access
        requestId:
          type: string
          description: The unique identification of the request involved with this error
          example: 16fefb53-035a-4249-af9d-f80a3b47b132
      x-talend:
        section: Commons
    PermissionDeleteResult:
      type: object
      properties:
        status:
          type: integer
          format: int32
        message:
          type: string
        permissionId:
          $ref: '#/components/schemas/PermissionId'
      x-talend:
        section: Commons
  parameters:
    workspaceId:
      name: workspaceId
      in: path
      required: true
      description: The workspace where rights will be applied
      schema:
        type: string
        description: The workspace where rights will be applied
      example: 6089228181ef4423736e47a9
    userId:
      name: userId
      in: path
      required: true
      description: The user for which rights will be applied
      schema:
        type: string
        description: The user for which rights will be applied
      example: b9e10a3f-9d68-44bb-862f-b2aa56dc7191
  securitySchemes:
    Public:
      type: apiKey
      description: This Bearer authentication can be set in the Authorization header of your requests. Authentication tokens and Personal Access Tokens are supported. Personal Access Tokens can be generated in the Profile Preferences page of the Talend Cloud Portal.
      in: header
      name: Authorization
x-talend:
  sections:
    Unitary management:
      description: 'Allows to manage workspace permissions of personal and non personal users on a fine-grained unitary way. '
    Provisioning and Mass management:
      description: 'Allows to take mass input management actions on workspace permissions globally. '
    Commons:
      description: Data types common to workspace permissions API