Spaces

Spaces is a central concept in the Qlik platform and is used to control access to various other resources in the system.

Endpoints

Skip to section
GET/v1/spaces
POST/v1/spaces
GET/v1/spaces/{spaceId}
PATCH/v1/spaces/{spaceId}
PUT/v1/spaces/{spaceId}
DELETE/v1/spaces/{spaceId}
GET/v1/spaces/{spaceId}/assignments
POST/v1/spaces/{spaceId}/assignments
GET/v1/spaces/{spaceId}/assignments/{assignmentId}
PUT/v1/spaces/{spaceId}/assignments/{assignmentId}
DELETE/v1/spaces/{spaceId}/assignments/{assignmentId}
GET/v1/spaces/types

Retrieves spaces that the current user has access to and match the query.

manage

Facts GET /v1/spaces

Rate limit
required
Tier 1 (1000 requests per minute)

Query Parameters GET /v1/spaces

action
string

Action on space. Supports only "?action=publish".

filter
string

Exact match filtering on space name using SCIM. Case insensitive on attribute name. For example ?filter=name eq "MySpace" and ?filter=NAME eq "MySpace" is both valid.

limit
default=10
integer<int32>

Maximum number of spaces to return.

name
string

Space name to search and filter for. Case-insensitive open search with wildcards both as prefix and suffix. For example, "?name=fin" will get "finance", "Final" and "Griffin".

next
string

The next page cursor. Next links make use of this.

ownerId
string

Space ownerId to filter by. For example, "?ownerId=123".

prev
string

The previous page cursor. Previous links make use of this.

sort
string

Field to sort by. Prefix with +/- to indicate asc/desc. For example, "?sort=+name" to sort ascending on Name. Supported fields are "type", "name" and "createdAt".

type
string

Type(s) of space to filter. For example, "?type=managed,shared".

Responses GET /v1/spaces

200
application/json

Spaces retrieved.

400
application/json

Bad request

401
application/json

Unauthorized, JWT invalid or not provided.

500
application/json

Internal server error.

GET/v1/spaces

curl "https://your-tenant.us.qlikcloud.com/api/v1/spaces" \
 -H "Authorization: Bearer <API-key>"

Response GET /v1/spaces

{
  "data": [
    {
      "id": "string",
      "meta": {
        "roles": [],
        "actions": [],
        "assignableRoles": {
          "enum": [
            "facilitator",
            "consumer",
            "producer",
            "dataconsumer",
            "codeveloper"
          ],
          "type": "string",
          "description": "The supported roles for Shared spaces.",
          "dereferenced": "#/definitions/SharedSpaceRoleType"
        }
      },
      "name": "string",
      "type": "shared",
      "links": {
        "self": {
          "href": "string"
        },
        "assignments": {
          "href": "string"
        }
      },
      "ownerId": "string",
      "tenantId": "string",
      "createdAt": "2023-11-29T00:09:33.958Z",
      "createdBy": "string",
      "updatedAt": "2023-11-29T00:09:33.958Z",
      "description": "string"
    }
  ],
  "meta": {
    "count": 0,
    "personalSpace": {
      "actions": [],
      "resourceType": "string"
    }
  },
  "links": {
    "next": {
      "href": "string"
    },
    "prev": {
      "href": "string"
    },
    "self": {
      "href": "string"
    }
  }
}

Creates a space.

manage

Facts POST /v1/spaces

Rate limit
required
Tier 2 (100 requests per minute)

Request Body POST /v1/spaces

application/json

Attributes that the user wants to set for a new space.

Responses POST /v1/spaces

201
application/json

Space created.

401
application/json

Unauthorized, JWT invalid or not provided.

403
application/json

Space create operation denied.

409
application/json

Space already exists. name must be unique.

500
application/json

Internal server error.

POST/v1/spaces

curl "https://your-tenant.us.qlikcloud.com/api/v1/spaces" \
 -X POST \
 -H "Authorization: Bearer <API-key>" \
 -H "Content-type: application/json" \
 -d '{"name":"string","type":"shared","description":"string"}'

Request POST /v1/spaces

{
  "name": "string",
  "type": "shared",
  "description": "string"
}

Response POST /v1/spaces

{
  "id": "string",
  "meta": {
    "roles": [],
    "actions": [],
    "assignableRoles": {
      "enum": [
        "facilitator",
        "consumer",
        "producer",
        "dataconsumer",
        "codeveloper"
      ],
      "type": "string",
      "description": "The supported roles for Shared spaces.",
      "dereferenced": "#/definitions/SharedSpaceRoleType"
    }
  },
  "name": "string",
  "type": "shared",
  "links": {
    "self": {
      "href": "string"
    },
    "assignments": {
      "href": "string"
    }
  },
  "ownerId": "string",
  "tenantId": "string",
  "createdAt": "2023-11-29T00:09:33.958Z",
  "createdBy": "string",
  "updatedAt": "2023-11-29T00:09:33.958Z",
  "description": "string"
}

Retrieves a single space by ID.

manage

Facts GET /v1/spaces/{spaceId}

Rate limit
required
Tier 1 (1000 requests per minute)

Path Parameters GET /v1/spaces/{spaceId}

spaceId
required
string<uid>

The ID of the space to retrieve.

Responses GET /v1/spaces/{spaceId}

200
application/json

Space retrieved.

401
application/json

Unauthorized, JWT invalid or not provided.

404
application/json

Space not found or access denied.

429
application/json

Too many repetetive requests.

500
application/json

Internal server error.

GET/v1/spaces/{spaceId}

curl "https://your-tenant.us.qlikcloud.com/api/v1/spaces/{spaceId}" \
 -H "Authorization: Bearer <API-key>"

Response GET /v1/spaces/{spaceId}

{
  "id": "string",
  "meta": {
    "roles": [],
    "actions": [],
    "assignableRoles": {
      "enum": [
        "facilitator",
        "consumer",
        "producer",
        "dataconsumer",
        "codeveloper"
      ],
      "type": "string",
      "description": "The supported roles for Shared spaces.",
      "dereferenced": "#/definitions/SharedSpaceRoleType"
    }
  },
  "name": "string",
  "type": "shared",
  "links": {
    "self": {
      "href": "string"
    },
    "assignments": {
      "href": "string"
    }
  },
  "ownerId": "string",
  "tenantId": "string",
  "createdAt": "2023-11-29T00:09:33.958Z",
  "createdBy": "string",
  "updatedAt": "2023-11-29T00:09:33.958Z",
  "description": "string"
}

Patches (updates) a space (partially).

manage

Facts PATCH /v1/spaces/{spaceId}

Rate limit
required
Tier 2 (100 requests per minute)

Path Parameters PATCH /v1/spaces/{spaceId}

spaceId
required
string<uid>

The ID of the space to update.

Request Body PATCH /v1/spaces/{spaceId}

application/json

Attribute that the user wants to patch (update) for the specified space.

Responses PATCH /v1/spaces/{spaceId}

200
application/json

Space patched (updated).

401
application/json

Unauthorized, JWT invalid or not provided.

403
application/json

Space patch (update) operation denied.

404
application/json

Space not found or access denied.

500
application/json

Internal server error.

PATCH/v1/spaces/{spaceId}

curl "https://your-tenant.us.qlikcloud.com/api/v1/spaces/{spaceId}" \
 -X PATCH \
 -H "Authorization: Bearer <API-key>" \
 -H "Content-type: application/json" \
 -d '{"op":"replace","path":"/name","value":"string"}'

Request PATCH /v1/spaces/{spaceId}

{
  "op": "replace",
  "path": "/name",
  "value": "string"
}

Response PATCH /v1/spaces/{spaceId}

{
  "id": "string",
  "meta": {
    "roles": [],
    "actions": [],
    "assignableRoles": {
      "enum": [
        "facilitator",
        "consumer",
        "producer",
        "dataconsumer",
        "codeveloper"
      ],
      "type": "string",
      "description": "The supported roles for Shared spaces.",
      "dereferenced": "#/definitions/SharedSpaceRoleType"
    }
  },
  "name": "string",
  "type": "shared",
  "links": {
    "self": {
      "href": "string"
    },
    "assignments": {
      "href": "string"
    }
  },
  "ownerId": "string",
  "tenantId": "string",
  "createdAt": "2023-11-29T00:09:33.958Z",
  "createdBy": "string",
  "updatedAt": "2023-11-29T00:09:33.958Z",
  "description": "string"
}

Updates a space.

manage

Facts PUT /v1/spaces/{spaceId}

Rate limit
required
Tier 2 (100 requests per minute)

Path Parameters PUT /v1/spaces/{spaceId}

spaceId
required
string<uid>

The ID of the space to update.

Request Body PUT /v1/spaces/{spaceId}

application/json

Attributes that the user wants to update for the specified space.

Responses PUT /v1/spaces/{spaceId}

200
application/json

Space updated.

401
application/json

Unauthorized, JWT invalid or not provided.

403
application/json

Space update operation denied.

404
application/json

Space not found or access denied.

500
application/json

Internal server error.

PUT/v1/spaces/{spaceId}

curl "https://your-tenant.us.qlikcloud.com/api/v1/spaces/{spaceId}" \
 -X PUT \
 -H "Authorization: Bearer <API-key>" \
 -H "Content-type: application/json" \
 -d '{"name":"string","ownerId":"string","description":"string"}'

Request PUT /v1/spaces/{spaceId}

{
  "name": "string",
  "ownerId": "string",
  "description": "string"
}

Response PUT /v1/spaces/{spaceId}

{
  "id": "string",
  "meta": {
    "roles": [],
    "actions": [],
    "assignableRoles": {
      "enum": [
        "facilitator",
        "consumer",
        "producer",
        "dataconsumer",
        "codeveloper"
      ],
      "type": "string",
      "description": "The supported roles for Shared spaces.",
      "dereferenced": "#/definitions/SharedSpaceRoleType"
    }
  },
  "name": "string",
  "type": "shared",
  "links": {
    "self": {
      "href": "string"
    },
    "assignments": {
      "href": "string"
    }
  },
  "ownerId": "string",
  "tenantId": "string",
  "createdAt": "2023-11-29T00:09:33.958Z",
  "createdBy": "string",
  "updatedAt": "2023-11-29T00:09:33.958Z",
  "description": "string"
}

Deletes a space.

manage

Facts DELETE /v1/spaces/{spaceId}

Rate limit
required
Tier 2 (100 requests per minute)

Path Parameters DELETE /v1/spaces/{spaceId}

spaceId
required
string<uid>

The ID of the space to delete.

Responses DELETE /v1/spaces/{spaceId}

204
object

Space deleted.

401
application/json

Unauthorized, JWT invalid or not provided.

403
application/json

Space delete operation denied.

404
application/json

Space not found or access denied.

412
application/json

Space delete precondition (space not empty) failed.

500
application/json

Internal server error.

DELETE/v1/spaces/{spaceId}

curl "https://your-tenant.us.qlikcloud.com/api/v1/spaces/{spaceId}" \
 -X DELETE \
 -H "Authorization: Bearer <API-key>"

Retrieves the assignments of the space matching the query.

manage

Facts GET /v1/spaces/{spaceId}/assignments

Rate limit
required
Tier 1 (1000 requests per minute)

Path Parameters GET /v1/spaces/{spaceId}/assignments

spaceId
required
string<uid>

The ID of the space of the assignment.

Query Parameters GET /v1/spaces/{spaceId}/assignments

limit
default=10
integer<int32>

Maximum number of assignments to return.

next
string

The next page cursor. Next links make use of this.

prev
string

The previous page cursor. Previous links make use of this.

type

The type of assignment.

Responses GET /v1/spaces/{spaceId}/assignments

200
application/json

Assignments retrieved.

401
application/json

Unauthorized, JWT invalid or not provided.

403
application/json

Assignments retrieve operation denied.

404
application/json

Space not found or access denied.

500
application/json

Internal server error.

GET/v1/spaces/{spaceId}/assignments

curl "https://your-tenant.us.qlikcloud.com/api/v1/spaces/{spaceId}/assignments" \
 -H "Authorization: Bearer <API-key>"

Response GET /v1/spaces/{spaceId}/assignments

{
  "data": [
    {
      "id": "string",
      "type": "user",
      "links": {
        "self": {
          "href": "string"
        },
        "space": {
          "href": "string"
        }
      },
      "roles": [],
      "spaceId": "string",
      "tenantId": "string",
      "createdAt": "2023-11-29T00:09:33.958Z",
      "createdBy": "string",
      "updatedAt": "2023-11-29T00:09:33.958Z",
      "updatedBy": "string",
      "assigneeId": "string"
    }
  ],
  "meta": {
    "count": 0
  },
  "links": {
    "next": {
      "href": "string"
    },
    "prev": {
      "href": "string"
    },
    "self": {
      "href": "string"
    }
  }
}

Creates an assignment.

manage

Facts POST /v1/spaces/{spaceId}/assignments

Rate limit
required
Tier 2 (100 requests per minute)

Path Parameters POST /v1/spaces/{spaceId}/assignments

spaceId
required
string<uid>

The ID of the space of the assignment.

Request Body POST /v1/spaces/{spaceId}/assignments

application/json

Attributes that the user wants to set for the assignment for the space.

Responses POST /v1/spaces/{spaceId}/assignments

201
application/json

Assignment created.

401
application/json

Unauthorized, JWT invalid or not provided.

403
application/json

Assignment create operation denied.

404
application/json

Space not found or access denied.

409
application/json

Assignment already exists. assigneeId must be unique.

500
application/json

Internal server error.

POST/v1/spaces/{spaceId}/assignments

curl "https://your-tenant.us.qlikcloud.com/api/v1/spaces/{spaceId}/assignments" \
 -X POST \
 -H "Authorization: Bearer <API-key>" \
 -H "Content-type: application/json" \
 -d '{"type":"user","roles":[],"assigneeId":"string"}'

Request POST /v1/spaces/{spaceId}/assignments

{
  "type": "user",
  "roles": [],
  "assigneeId": "string"
}

Response POST /v1/spaces/{spaceId}/assignments

{
  "id": "string",
  "type": "user",
  "links": {
    "self": {
      "href": "string"
    },
    "space": {
      "href": "string"
    }
  },
  "roles": [],
  "spaceId": "string",
  "tenantId": "string",
  "createdAt": "2023-11-29T00:09:33.958Z",
  "createdBy": "string",
  "updatedAt": "2023-11-29T00:09:33.958Z",
  "updatedBy": "string",
  "assigneeId": "string"
}

Retrieves a single assignment by ID.

manage

Facts GET /v1/spaces/{spaceId}/assignments/{assignmentId}

Rate limit
required
Tier 1 (1000 requests per minute)

Path Parameters GET /v1/spaces/{spaceId}/assignments/{assignmentId}

assignmentId
required
string<uid>

The ID of the assignment to retrieve.

spaceId
required
string<uid>

The ID of the space of the assignment.

Responses GET /v1/spaces/{spaceId}/assignments/{assignmentId}

200
application/json

Assignment retrieved.

401
application/json

Unauthorized, JWT invalid or not provided.

403
application/json

Assignment retrieve operation denied.

404
application/json

Space not found or access denied or assignment not found.

500
application/json

Internal server error.

GET/v1/spaces/{spaceId}/assignments/{assignmentId}

curl "https://your-tenant.us.qlikcloud.com/api/v1/spaces/{spaceId}/assignments/{assignmentId}" \
 -H "Authorization: Bearer <API-key>"

Response GET /v1/spaces/{spaceId}/assignments/{assignmentId}

{
  "id": "string",
  "type": "user",
  "links": {
    "self": {
      "href": "string"
    },
    "space": {
      "href": "string"
    }
  },
  "roles": [],
  "spaceId": "string",
  "tenantId": "string",
  "createdAt": "2023-11-29T00:09:33.959Z",
  "createdBy": "string",
  "updatedAt": "2023-11-29T00:09:33.959Z",
  "updatedBy": "string",
  "assigneeId": "string"
}

Updates a single assignment by ID. The complete list of roles must be provided.

manage

Facts PUT /v1/spaces/{spaceId}/assignments/{assignmentId}

Rate limit
required
Tier 2 (100 requests per minute)

Path Parameters PUT /v1/spaces/{spaceId}/assignments/{assignmentId}

assignmentId
required
string<uid>

The ID of the assignment to update.

spaceId
required
string<uid>

The ID of the space of the assignment.

Request Body PUT /v1/spaces/{spaceId}/assignments/{assignmentId}

application/json

Attributes that the user wants to update for the specified assignment.

Responses PUT /v1/spaces/{spaceId}/assignments/{assignmentId}

200
application/json

Assignment updated.

401
application/json

Unauthorized, JWT invalid or not provided.

403
application/json

Assignment update operation denied.

404
application/json

Space not found or access denied.

500
application/json

Internal server error.

PUT/v1/spaces/{spaceId}/assignments/{assignmentId}

curl "https://your-tenant.us.qlikcloud.com/api/v1/spaces/{spaceId}/assignments/{assignmentId}" \
 -X PUT \
 -H "Authorization: Bearer <API-key>" \
 -H "Content-type: application/json" \
 -d '{"roles":[]}'

Request PUT /v1/spaces/{spaceId}/assignments/{assignmentId}

{
  "roles": []
}

Response PUT /v1/spaces/{spaceId}/assignments/{assignmentId}

{
  "id": "string",
  "type": "user",
  "links": {
    "self": {
      "href": "string"
    },
    "space": {
      "href": "string"
    }
  },
  "roles": [],
  "spaceId": "string",
  "tenantId": "string",
  "createdAt": "2023-11-29T00:09:33.959Z",
  "createdBy": "string",
  "updatedAt": "2023-11-29T00:09:33.959Z",
  "updatedBy": "string",
  "assigneeId": "string"
}

Deletes an assignment.

manage

Facts DELETE /v1/spaces/{spaceId}/assignments/{assignmentId}

Rate limit
required
Tier 2 (100 requests per minute)

Path Parameters DELETE /v1/spaces/{spaceId}/assignments/{assignmentId}

assignmentId
required
string<uid>

The ID of the assignment to delete.

spaceId
required
string<uid>

The ID of the space of the assignment.

Responses DELETE /v1/spaces/{spaceId}/assignments/{assignmentId}

204
object

Assignment deleted.

401
application/json

Unauthorized, JWT invalid or not provided.

403
application/json

Assignment delete operation denied.

404
application/json

Space not found or access denied or assignment not found.

500
application/json

Internal server error.

DELETE/v1/spaces/{spaceId}/assignments/{assignmentId}

curl "https://your-tenant.us.qlikcloud.com/api/v1/spaces/{spaceId}/assignments/{assignmentId}" \
 -X DELETE \
 -H "Authorization: Bearer <API-key>"

Gets a list of distinct space types.

manage

Facts GET /v1/spaces/types

Rate limit
required
Tier 1 (1000 requests per minute)

Responses GET /v1/spaces/types

200
application/json

Space types retrieved.

401
application/json

Unauthorized, JWT invalid or not provided.

500
application/json

Internal server error.

GET/v1/spaces/types

curl "https://your-tenant.us.qlikcloud.com/api/v1/spaces/types" \
 -H "Authorization: Bearer <API-key>"

Response GET /v1/spaces/types

{
  "data": [
    "shared",
    "managed"
  ]
}

ActionName

string

The supported actions for user-created spaces like Shared or Managed spaces.

Enum:

create

read

update

delete

publish

Assignment

Properties

id
required
string<uid>

No description

type

The type of assignment such as user or group

Enum:

user

group

links
required

No description

roles
required
Array<RoleType>

The roles assigned to a user or group. Must not be empty.

spaceId
required
string<uid>

The unique identifier for the space.

tenantId
required
string<uid>

The unique identifier for the tenant.

createdAt
string<date-time>

The date and time when the space was created.

createdBy
string<uid>

The ID of the user who created the assignment.

updatedAt
string<date-time>

The date and time when the space was updated.

updatedBy
string<uid>

The ID of the user who updated the assignment.

assigneeId
required
string<uid>

The userId or groupId based on the type.

AssignmentCreate

Properties

type

The type of assignment such as user or group

Enum:

user

group

roles
required
Array<RoleType>

The roles assigned to the assigneeId.

assigneeId
required
string<uid>

The userId or groupId based on the type.

Assignments

object

Properties

data

No description

meta
object

No description

links

No description

AssignmentType

string

The type of assignment such as user or group

Enum:

user

group

AssignmentUpdate

Properties

roles
Array<RoleType>

The roles assigned to the assigneeId.

Error

An error object.

Properties

code
required
string

The error code.

meta

Additional properties relating to the error.

title
required
string

Summary of the problem.

detail
string

A human-readable explanation specific to the occurrence of this problem.

Errors

object

Properties

code
deprecated
string

The error code.

meta
deprecated
object

Additional properties relating to the error.

title
deprecated
string

Summary of the problem.

detail
deprecated
string

A human-readable explanation specific to the occurrence of this problem.

errors

No description

source
deprecated

References to the source of the error.

traceId
string

No description

RoleType

string

Supported roles by space type:

  • Shared: codeveloper, consumer, dataconsumer, facilitator, producer
  • Managed: consumer, contributor, dataconsumer, facilitator, publisher, basicconsumer
  • Data: consumer, dataconsumer, facilitator, operator, producer, publisher

Enum:

consumer

contributor

dataconsumer

facilitator

operator

producer

publisher

basicconsumer

codeveloper

SharedSpaceRoleType

string

The supported roles for Shared spaces.

Enum:

facilitator

consumer

producer

dataconsumer

codeveloper

Space

A space is a security context simplifying the management of access control by allowing users to control it on the containers instead of on the resources themselves.

Properties

id
required
string<uid>

A unique identifier for the space, for example, 62716f4b39b865ece543cd45.

meta

Information about the space settings.

name
required
string

The name of the space. Personal spaces do not have a name.

type
string

The type of space such as shared, managed, and so on.

Enum:

shared

managed

data

links
required

No description

ownerId
string<uid>

The ID for the space owner.

tenantId
required
string<uid>

The ID for the tenant, for example, xqGQ0k66vSR8f9G7J-vYtHZQkiYrCpct.

createdAt
string<date-time>

The date and time when the space was created.

createdBy
string<uid>

The ID of the user who created the space.

updatedAt
string<date-time>

The date and time when the space was updated.

description
string

The description of the space. Personal spaces do not have a description.

SpaceCreate

Properties

name
required, pattern='^[^\"\*\?\<\>\/\|\\\:]+$'
string

The name of the space. Personal spaces do not have a name.

type
required
string

The type of space such as shared, managed, and so on.

Enum:

shared

managed

data

description
string

The description of the space. Personal spaces do not have a description.

SpacePatch

Array<object>

Properties

op
required
string

The operation to be performed.

Enum:

replace

path
required
string

Field of space to be patched (updated).

Enum:

/name

/ownerId

/description

value
required
string

The value to be used within the operations.

  • name: The name (string) of space of maxLength 256 of pattern: ^[^"*?<>/|\:]+$
  • description: The description (string) of the space. Personal spaces do not have a description.
  • ownerId: The user ID in uid format (string) of the space owner.

Spaces

object

Properties

data

No description

meta

No description

links

No description

SpaceType

string

The name of the type.

Enum:

shared

managed

data

SpaceTypes

The distinct types of spaces (shared, managed, and so on).

Properties

data
Array<SpaceType>

No description

SpaceUpdate

Properties

name
pattern='^[^\"\*\?\<\>\/\|\\\:]+$'
string

The name of the space.

ownerId
string<uid>

The user ID of the space owner.

description
string

The description of the space. Personal spaces do not have a description.

v0.879.8
Was this page helpful?