Link Search Menu Expand Document

Channels

Channels enable datasets to be categorised or grouped together. A single workspace can have multiple channels.


Objects

Channel

Path Type Format Description
id String Version 4 UUID The channel ID
creator Member   The channel creator
workspace Workspace   The channel workspace
created String ISO 8601 timestamp The channel created at timestamp
lastModified String ISO 8601 timestamp The channel last modified timestamp
name String   The channel name
description String   The channel description
picture String URL The channel picture metadata
{
  "id" : "3b23f638-49ff-4a08-b676-eb74a0509f2e",
  "workspace" : {
    "id" : "7bc05e30-578c-4ef4-8766-e6c7af793d1e",
    "created" : "2022-01-21T09:33:03.936578",
    "lastModified" : "2022-01-21T09:33:03.936579",
    "alias" : "yxzbnvs",
    "name" : "Test Workspace [2022-01-21T09:33:03.930821]",
    "repositoryUrl" : "DISABLED",
    "status" : "READY"
  },
  "created" : "2022-01-21T09:33:07.994379",
  "lastModified" : "2022-01-21T09:33:07.994379",
  "name" : "SITChannel",
  "description" : "SITChannel",
  "_links" : {
    "self" : {
      "href" : "https://catalog.matatika.com/api/channels/3b23f638-49ff-4a08-b676-eb74a0509f2e"
    },
    "datasets" : {
      "href" : "https://catalog.matatika.com/api/channels/3b23f638-49ff-4a08-b676-eb74a0509f2e/datasets",
      "type" : "GET"
    },
    "add subscription" : {
      "href" : "https://catalog.matatika.com/api/channels/3b23f638-49ff-4a08-b676-eb74a0509f2e/subscriptions"
    },
    "update channel" : {
      "href" : "https://catalog.matatika.com/api/workspaces/7bc05e30-578c-4ef4-8766-e6c7af793d1e/channels/3b23f638-49ff-4a08-b676-eb74a0509f2e"
    },
    "delete channel" : {
      "href" : "https://catalog.matatika.com/api/channels/3b23f638-49ff-4a08-b676-eb74a0509f2e"
    }
  }
}

Requests

See Also


Initialise a channel

POST

/api/channels/{channel-id}

Initialise a channel.

Request

Example Snippets

  • cURL
curl -H "Authorization: Bearer $ACCESS_TOKEN" 'https://catalog.matatika.com/api/workspaces/7bc05e30-578c-4ef4-8766-e6c7af793d1e/channels' -i -X POST \
    -H 'Accept: application/json, application/javascript, text/javascript, text/json' \
    -H 'Content-Type: application/json' \
    -d '{ }'
  • Python (requests)
import requests

url = "https://catalog.matatika.com/api/workspaces/7bc05e30-578c-4ef4-8766-e6c7af793d1e/channels"

data = { }
headers = {
  'Authorization': ACCESS_TOKEN
}

response = requests.request("POST", url, headers=headers, data=data)

print(response.text.encode('utf8'))

Response

200 OK

Channel with HAL links.

{
  "id" : "3b23f638-49ff-4a08-b676-eb74a0509f2e",
  "workspace" : {
    "id" : "7bc05e30-578c-4ef4-8766-e6c7af793d1e",
    "created" : "2022-01-21T09:33:03.936578",
    "lastModified" : "2022-01-21T09:33:03.936579",
    "alias" : "yxzbnvs",
    "name" : "Test Workspace [2022-01-21T09:33:03.930821]",
    "repositoryUrl" : "DISABLED",
    "status" : "READY"
  },
  "created" : "2022-01-21T09:33:07.832705",
  "lastModified" : "2022-01-21T09:33:07.832706",
  "_links" : {
    "create channel" : {
      "href" : "https://catalog.matatika.com/api/workspaces/7bc05e30-578c-4ef4-8766-e6c7af793d1e/channels/3b23f638-49ff-4a08-b676-eb74a0509f2e"
    }
  }
}

View a channel

GET

/api/channels/{channel-id}

Returns the channel {channel-id}.

Prerequisites

  • Channel {channel-id} must exist

Request

Example Snippets

  • cURL
curl -H "Authorization: Bearer $ACCESS_TOKEN" 'https://catalog.matatika.com/api/channels/3b23f638-49ff-4a08-b676-eb74a0509f2e' -i -X GET \
    -H 'Accept: application/json, application/javascript, text/javascript, text/json' \
    -H 'Content-Type: application/json' \
    -d '{ }'
  • Python (requests)
import requests

url = "https://catalog.matatika.com/api/channels/3b23f638-49ff-4a08-b676-eb74a0509f2e"

data = { }
headers = {
  'Authorization': ACCESS_TOKEN
}

response = requests.request("GET", url, headers=headers, data=data)

print(response.text.encode('utf8'))

Response

200 OK

Channel with HAL links.

{
  "id" : "3b23f638-49ff-4a08-b676-eb74a0509f2e",
  "workspace" : {
    "id" : "7bc05e30-578c-4ef4-8766-e6c7af793d1e",
    "created" : "2022-01-21T09:33:03.936578",
    "lastModified" : "2022-01-21T09:33:03.936579",
    "alias" : "yxzbnvs",
    "name" : "Test Workspace [2022-01-21T09:33:03.930821]",
    "repositoryUrl" : "DISABLED",
    "status" : "READY"
  },
  "created" : "2022-01-21T09:33:07.994379",
  "lastModified" : "2022-01-21T09:33:07.994379",
  "name" : "SITChannel",
  "description" : "SITChannel",
  "_links" : {
    "self" : {
      "href" : "https://catalog.matatika.com/api/channels/3b23f638-49ff-4a08-b676-eb74a0509f2e"
    },
    "datasets" : {
      "href" : "https://catalog.matatika.com/api/channels/3b23f638-49ff-4a08-b676-eb74a0509f2e/datasets",
      "type" : "GET"
    },
    "add subscription" : {
      "href" : "https://catalog.matatika.com/api/channels/3b23f638-49ff-4a08-b676-eb74a0509f2e/subscriptions"
    },
    "update channel" : {
      "href" : "https://catalog.matatika.com/api/workspaces/7bc05e30-578c-4ef4-8766-e6c7af793d1e/channels/3b23f638-49ff-4a08-b676-eb74a0509f2e"
    },
    "delete channel" : {
      "href" : "https://catalog.matatika.com/api/channels/3b23f638-49ff-4a08-b676-eb74a0509f2e"
    }
  }
}

View a channel in a workspace

GET

/api/workspaces/{workspace-id}/channels/{channel-id}

Returns a channel in the workspace {workspace-id}.

Prerequisites

  • Workspace {workspace-id} must exist
  • The user must be a member of the workspace {workspace-id}

Request

Example Snippets

  • cURL
curl -H "Authorization: Bearer $ACCESS_TOKEN" 'https://catalog.matatika.com/api/channels/3b23f638-49ff-4a08-b676-eb74a0509f2e' -i -X GET \
    -H 'Accept: application/json, application/javascript, text/javascript, text/json' \
    -H 'Content-Type: application/json' \
    -d '{ }'
  • Python (requests)
import requests

url = "https://catalog.matatika.com/api/channels/3b23f638-49ff-4a08-b676-eb74a0509f2e"

data = { }
headers = {
  'Authorization': ACCESS_TOKEN
}

response = requests.request("GET", url, headers=headers, data=data)

print(response.text.encode('utf8'))

Response

200 OK

Channel with HAL links.

{
  "id" : "3b23f638-49ff-4a08-b676-eb74a0509f2e",
  "workspace" : {
    "id" : "7bc05e30-578c-4ef4-8766-e6c7af793d1e",
    "created" : "2022-01-21T09:33:03.936578",
    "lastModified" : "2022-01-21T09:33:03.936579",
    "alias" : "yxzbnvs",
    "name" : "Test Workspace [2022-01-21T09:33:03.930821]",
    "repositoryUrl" : "DISABLED",
    "status" : "READY"
  },
  "created" : "2022-01-21T09:33:07.994379",
  "lastModified" : "2022-01-21T09:33:07.994379",
  "name" : "SITChannel",
  "description" : "SITChannel",
  "_links" : {
    "self" : {
      "href" : "https://catalog.matatika.com/api/channels/3b23f638-49ff-4a08-b676-eb74a0509f2e"
    },
    "datasets" : {
      "href" : "https://catalog.matatika.com/api/channels/3b23f638-49ff-4a08-b676-eb74a0509f2e/datasets",
      "type" : "GET"
    },
    "add subscription" : {
      "href" : "https://catalog.matatika.com/api/channels/3b23f638-49ff-4a08-b676-eb74a0509f2e/subscriptions"
    },
    "update channel" : {
      "href" : "https://catalog.matatika.com/api/workspaces/7bc05e30-578c-4ef4-8766-e6c7af793d1e/channels/3b23f638-49ff-4a08-b676-eb74a0509f2e"
    },
    "delete channel" : {
      "href" : "https://catalog.matatika.com/api/channels/3b23f638-49ff-4a08-b676-eb74a0509f2e"
    }
  }
}

View all channels in a workspace

GET

/api/workspaces/{workspace-id}/channels/{channel-id}

Returns all channels in the workspace {workspace-id}.

Prerequisites

  • Workspace {workspace-id} must exist
  • The user must be a member of the workspace {workspace-id}

Request

Example Snippets

  • cURL
curl -H "Authorization: Bearer $ACCESS_TOKEN" 'https://catalog.matatika.com/api/workspaces/7bc05e30-578c-4ef4-8766-e6c7af793d1e/channels' -i -X GET \
    -H 'Accept: application/json, application/javascript, text/javascript, text/json' \
    -H 'Content-Type: application/json' \
    -d '{ }'
  • Python (requests)
import requests

url = "https://catalog.matatika.com/api/workspaces/7bc05e30-578c-4ef4-8766-e6c7af793d1e/channels"

data = { }
headers = {
  'Authorization': ACCESS_TOKEN
}

response = requests.request("GET", url, headers=headers, data=data)

print(response.text.encode('utf8'))

Response

200 OK

Channel collection with HAL links.

{
  "_embedded" : {
    "channels" : [ {
      "id" : "3b23f638-49ff-4a08-b676-eb74a0509f2e",
      "workspace" : {
        "id" : "7bc05e30-578c-4ef4-8766-e6c7af793d1e",
        "created" : "2022-01-21T09:33:03.936578",
        "lastModified" : "2022-01-21T09:33:03.936579",
        "alias" : "yxzbnvs",
        "name" : "Test Workspace [2022-01-21T09:33:03.930821]",
        "repositoryUrl" : "DISABLED",
        "status" : "READY"
      },
      "created" : "2022-01-21T09:33:07.994379",
      "lastModified" : "2022-01-21T09:33:07.994379",
      "name" : "SITChannel",
      "description" : "SITChannel",
      "_links" : {
        "self" : {
          "href" : "https://catalog.matatika.com/api/channels/3b23f638-49ff-4a08-b676-eb74a0509f2e"
        },
        "datasets" : {
          "href" : "https://catalog.matatika.com/api/channels/3b23f638-49ff-4a08-b676-eb74a0509f2e/datasets",
          "type" : "GET"
        },
        "add subscription" : {
          "href" : "https://catalog.matatika.com/api/channels/3b23f638-49ff-4a08-b676-eb74a0509f2e/subscriptions"
        },
        "update channel" : {
          "href" : "https://catalog.matatika.com/api/workspaces/7bc05e30-578c-4ef4-8766-e6c7af793d1e/channels/3b23f638-49ff-4a08-b676-eb74a0509f2e"
        },
        "delete channel" : {
          "href" : "https://catalog.matatika.com/api/channels/3b23f638-49ff-4a08-b676-eb74a0509f2e"
        }
      }
    }, {
      "id" : "891c62d2-b53e-4502-a723-afb1296d8dd3",
      "workspace" : {
        "id" : "7bc05e30-578c-4ef4-8766-e6c7af793d1e",
        "created" : "2022-01-21T09:33:03.936578",
        "lastModified" : "2022-01-21T09:33:03.936579",
        "alias" : "yxzbnvs",
        "name" : "Test Workspace [2022-01-21T09:33:03.930821]",
        "repositoryUrl" : "DISABLED",
        "status" : "READY"
      },
      "created" : "2022-01-21T09:33:08.168611",
      "lastModified" : "2022-01-21T09:33:08.168612",
      "name" : "SITChannelTwo",
      "description" : "SITChannelTwo",
      "_links" : {
        "self" : {
          "href" : "https://catalog.matatika.com/api/channels/891c62d2-b53e-4502-a723-afb1296d8dd3"
        },
        "datasets" : {
          "href" : "https://catalog.matatika.com/api/channels/891c62d2-b53e-4502-a723-afb1296d8dd3/datasets",
          "type" : "GET"
        },
        "add subscription" : {
          "href" : "https://catalog.matatika.com/api/channels/891c62d2-b53e-4502-a723-afb1296d8dd3/subscriptions"
        },
        "update channel" : {
          "href" : "https://catalog.matatika.com/api/workspaces/7bc05e30-578c-4ef4-8766-e6c7af793d1e/channels/891c62d2-b53e-4502-a723-afb1296d8dd3"
        },
        "delete channel" : {
          "href" : "https://catalog.matatika.com/api/channels/891c62d2-b53e-4502-a723-afb1296d8dd3"
        }
      }
    } ]
  },
  "_links" : {
    "self" : {
      "href" : "https://catalog.matatika.com/api/workspaces/7bc05e30-578c-4ef4-8766-e6c7af793d1e/channels?page=0&size=20"
    }
  },
  "page" : {
    "size" : 20,
    "totalElements" : 2,
    "totalPages" : 1,
    "number" : 0
  }
}

Create or Update a channel in a workspace

PUT

/api/workspaces/{workspace-id}/channels/{channel-id} or {channel-name}

Creates or Updates a channel in the workspace {workspace-id}.

This endpoint takes either a {channel-id} (UUID) or {channel-name} (String), and based on the supplied value and the channels that already exist in the workspace, will update or create a channel accordingly.

Prerequisites

  • Workspace {workspace-id} must exist
  • The user must be a admin in the workspace {workspace-id}

Request

Example Snippets

  • cURL
curl -H "Authorization: Bearer $ACCESS_TOKEN" 'https://catalog.matatika.com/api/workspaces/7bc05e30-578c-4ef4-8766-e6c7af793d1e/channels/3b23f638-49ff-4a08-b676-eb74a0509f2e' -i -X PUT \
    -H 'Accept: application/json, application/javascript, text/javascript, text/json' \
    -H 'Content-Type: application/json' \
    -d '{
  "name" : "SITChannel",
  "description" : "SITChannel"
}'
  • Python (requests)
import requests

url = "https://catalog.matatika.com/api/workspaces/7bc05e30-578c-4ef4-8766-e6c7af793d1e/channels/3b23f638-49ff-4a08-b676-eb74a0509f2e"

data = {
  "name" : "SITChannel",
  "description" : "SITChannel"
}
headers = {
  'Authorization': ACCESS_TOKEN
}

response = requests.request("PUT", url, headers=headers, data=data)

print(response.text.encode('utf8'))

Response

200 OK / 201 Created

Channel with HAL links.

{
  "id" : "3b23f638-49ff-4a08-b676-eb74a0509f2e",
  "workspace" : {
    "id" : "7bc05e30-578c-4ef4-8766-e6c7af793d1e",
    "created" : "2022-01-21T09:33:03.936578",
    "lastModified" : "2022-01-21T09:33:03.936579",
    "alias" : "yxzbnvs",
    "name" : "Test Workspace [2022-01-21T09:33:03.930821]",
    "repositoryUrl" : "DISABLED",
    "status" : "READY"
  },
  "created" : "2022-01-21T09:33:07.994379",
  "lastModified" : "2022-01-21T09:33:07.994379",
  "name" : "SITChannel",
  "description" : "SITChannel",
  "_links" : {
    "self" : {
      "href" : "https://catalog.matatika.com/api/channels/3b23f638-49ff-4a08-b676-eb74a0509f2e"
    },
    "datasets" : {
      "href" : "https://catalog.matatika.com/api/channels/3b23f638-49ff-4a08-b676-eb74a0509f2e/datasets",
      "type" : "GET"
    },
    "add subscription" : {
      "href" : "https://catalog.matatika.com/api/channels/3b23f638-49ff-4a08-b676-eb74a0509f2e/subscriptions"
    },
    "update channel" : {
      "href" : "https://catalog.matatika.com/api/workspaces/7bc05e30-578c-4ef4-8766-e6c7af793d1e/channels/3b23f638-49ff-4a08-b676-eb74a0509f2e"
    },
    "delete channel" : {
      "href" : "https://catalog.matatika.com/api/channels/3b23f638-49ff-4a08-b676-eb74a0509f2e"
    }
  }
}

Delete a channel

DELETE

/api/channels/{channel-id}

Delete a channel.

Prerequisites

  • The user must be a admin of the workspace the channel is in.

Request

Example Snippets

  • cURL
curl -H "Authorization: Bearer $ACCESS_TOKEN" 'https://catalog.matatika.com/api/channels/3b23f638-49ff-4a08-b676-eb74a0509f2e' -i -X DELETE \
    -H 'Accept: application/json, application/javascript, text/javascript, text/json' \
    -H 'Content-Type: application/json' \
    -d '{ }'
  • Python (requests)
import requests

url = "https://catalog.matatika.com/api/channels/3b23f638-49ff-4a08-b676-eb74a0509f2e"

data = { }
headers = {
  'Authorization': ACCESS_TOKEN
}

response = requests.request("DELETE", url, headers=headers, data=data)

print(response.text.encode('utf8'))

Response

204 No Content

No response body provided.