For AI agents: markdown of this page — /docs-content-en/entities/automated-solutions/list.md documentation index — /llms.txt

List workspaces

GET /v1/automated-solutions

Returns the digital workspaces of the Bitrix24 account together with the smart process types bound to each workspace.

Parameters

Parameter Type Default Description
Parameterfilter (query) Typeobject Default— DescriptionFilter by the id and title fields from GET /v1/automated-solutions/fields.
Filtering syntax. Example: ?filter[id]=7
Parameterorder (query) Typeobject Defaultid ascending DescriptionSort by the id and title fields: ?order[title]=asc. Short form: ?sort=title; descending: ?sort=-title
Parameterselect (query) Typestring Default— DescriptionField selection: ?select=id,title
Parameterlimit (query) Typenumber Default50 DescriptionNumber of records, up to 5000
Parameteroffset (query) Typenumber Default0 DescriptionSkip N records

Pagination: when limit is greater than 50, Vibecode assembles the response from several pages on its own. The maximum is 5000 records per call.

Examples

curl — personal key

Terminal
curl -g "https://vibecode.bitrix24.com/v1/automated-solutions?limit=10&order[title]=asc" \
  -H "X-Api-Key: YOUR_API_KEY"

curl — OAuth application

Terminal
curl -g "https://vibecode.bitrix24.com/v1/automated-solutions?limit=10&order[title]=asc" \
  -H "X-Api-Key: YOUR_APP_KEY" \
  -H "Authorization: Bearer USER_SESSION_TOKEN"

JavaScript — personal key

javascript
const res = await fetch('https://vibecode.bitrix24.com/v1/automated-solutions?limit=10&order[title]=asc', {
  headers: {
    'X-Api-Key': 'YOUR_API_KEY',
  },
})

const { success, data } = await res.json()
for (const place of data) {
  console.log(place.id, place.title, 'types:', place.typeIds.length)
}

JavaScript — OAuth application

javascript
const res = await fetch('https://vibecode.bitrix24.com/v1/automated-solutions?limit=10&order[title]=asc', {
  headers: {
    'X-Api-Key': 'YOUR_APP_KEY',
    'Authorization': 'Bearer USER_SESSION_TOKEN',
  },
})

const { success, data } = await res.json()

Response fields

Field Type Description
Fieldsuccess Typeboolean DescriptionAlways true on success
Fielddata Typearray DescriptionArray of workspaces
Fielddata[].id Typenumber DescriptionWorkspace identifier
Fielddata[].title Typestring DescriptionWorkspace name
Fielddata[].typeIds Typearray DescriptionIDs of the bound smart process types — the type id field from GET /v1/smart-processes, not its entityTypeId. An empty array if no types are bound
Fieldmeta.total Typenumber DescriptionTotal number of workspaces matching the filter
Fieldmeta.hasMore Typeboolean DescriptionWhether more records exist beyond limit

Response example

JSON
{
  "success": true,
  "data": [
    { "id": 9, "title": "HR processes", "typeIds": [63] },
    { "id": 11, "title": "Procurement", "typeIds": [] },
    { "id": 1, "title": "yay", "typeIds": [3, 13, 15] }
  ],
  "meta": {
    "total": 3,
    "hasMore": false
  }
}

Error response example

400 — filter by the typeIds field:

JSON
{
  "success": false,
  "error": {
    "code": "UNKNOWN_FILTER_FIELD",
    "message": "Unknown filter field 'typeIds' for entity 'automated-solutions'. Available: id, title"
  }
}

Errors

HTTP Code Description
HTTP400 CodeUNKNOWN_FILTER_FIELD DescriptionFilter by a field other than id and title, including typeIds. The request is rejected before reaching the portal
HTTP400 CodeUNKNOWN_SORT_FIELD DescriptionSort by a field other than id and title, in either of the two forms — order[typeIds]=asc or sort=typeIds. The request is rejected before reaching the portal
HTTP400 CodeINVALID_FILTER DescriptionThe filter value could not be parsed: one request mixes the JSON form filter={...} and the square-bracket form filter[...], or the string is not a JSON object
HTTP401 CodeMISSING_API_KEY DescriptionThe X-Api-Key header was not passed
HTTP401 CodeTOKEN_MISSING DescriptionThe API key has no configured tokens
HTTP403 CodeSCOPE_DENIED DescriptionThe API key does not have the crm scope
HTTP429 CodeRATE_LIMITED DescriptionRate limit exceeded: 300 requests per minute per portal. All API keys of the portal share one limit. The current limit is returned in the x-ratelimit-limit header. Retry after the delay in the Retry-After header

For the full list of common API errors, see Errors.

Known specifics

Workspaces with the same name. When sorting by title, Vibecode adds id ascending as the second key. Workspaces with the same name come in the same order on every page, so paging through with offset neither loses nor repeats records.

See also