Macrometa Collections API
The Collections API from Macrometa — 10 operation(s) for collections.
The Collections API from Macrometa — 10 operation(s) for collections.
openapi: 3.0.0
info:
title: Macrometa API Reference Activity Metrics Collections API
version: 0.17.17
description: API reference for the Macrometa Global Data Network.
license:
name: Macrometa License, Version 2.0
servers:
- url: https://api-play.paas.macrometa.io
description: GDN API
host: api-play.paas.macrometa.io
security:
- ApiKeyAuth: []
- BearerAuth: []
tags:
- name: Collections
paths:
/_fabric/{fabric}/_api/collection:
get:
description: Fetch the list of all collections.
operationId: handleCommandGet
parameters:
- in: path
name: fabric
required: true
description: The name of the fabric.
schema:
type: string
format: string
default: _system
- description: Whether or not system collections should be excluded from the result.
in: query
name: excludeSystem
required: false
schema:
type: boolean
default: true
responses:
'200':
description: Successfully fetched collections.
content:
application/json:
schema:
$ref: '#/components/schemas/api_collection_get_http_examples_rc_200'
headers:
x-gdn-region:
schema:
$ref: '#/components/schemas/headers/x-gdn-region'
x-gdn-requestid:
schema:
$ref: '#/components/schemas/headers/x-gdn-requestid'
'404':
description: Failed to find specified fabric.
content:
application/json:
schema:
$ref: '#/components/schemas/error_example_rc_404'
headers:
x-gdn-region:
schema:
$ref: '#/components/schemas/headers/x-gdn-region'
x-gdn-requestid:
schema:
$ref: '#/components/schemas/headers/x-gdn-requestid'
summary: List all collections
tags:
- Collections
post:
description: Create collection.
operationId: handleCommandPost:CreateCollection
parameters:
- in: path
name: fabric
required: true
description: The name of the fabric.
schema:
type: string
format: string
default: _system
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/fabric_collection_validate'
required: true
responses:
'200':
description: Successfully created collection.
content:
application/json:
schema:
$ref: '#/components/schemas/api_collection_http_200_help'
headers:
x-gdn-region:
schema:
$ref: '#/components/schemas/headers/x-gdn-region'
x-gdn-requestid:
schema:
$ref: '#/components/schemas/headers/x-gdn-requestid'
'400':
description: Failed due to missing or malformed data. Verify that all parameters are complete.
content:
application/json:
schema:
$ref: '#/components/schemas/error_example_rc_400'
headers:
x-gdn-region:
schema:
$ref: '#/components/schemas/headers/x-gdn-region'
x-gdn-requestid:
schema:
$ref: '#/components/schemas/headers/x-gdn-requestid'
'403':
description: Failed to validate because you do not have access to the server.
content:
application/json:
schema:
$ref: '#/components/schemas/error_example_rc_403'
headers:
x-gdn-region:
schema:
$ref: '#/components/schemas/headers/x-gdn-region'
x-gdn-requestid:
schema:
$ref: '#/components/schemas/headers/x-gdn-requestid'
'404':
description: Failed to find specified fabric.
content:
application/json:
schema:
$ref: '#/components/schemas/error_example_rc_404'
headers:
x-gdn-region:
schema:
$ref: '#/components/schemas/headers/x-gdn-region'
x-gdn-requestid:
schema:
$ref: '#/components/schemas/headers/x-gdn-requestid'
summary: Create collection
tags:
- Collections
/_fabric/{fabric}/_api/collection/{collection-name}:
delete:
description: Remove the collection.
operationId: handleCommandDelete:collection
parameters:
- in: path
name: fabric
required: true
description: The name of the fabric.
schema:
type: string
format: string
default: _system
- description: The name of the collection to remove.
in: path
name: collection-name
required: true
schema:
type: string
format: string
- description: Whether or not the collection to remove is a system collection. This parameter must be set to *true* in order to remove system collections.
in: query
name: isSystem
required: false
schema:
type: boolean
default: false
responses:
'200':
description: Successfully removed collection.
content:
application/json:
schema:
$ref: '#/components/schemas/api_collection_post_http_examples_rc_200'
headers:
x-gdn-region:
schema:
$ref: '#/components/schemas/headers/x-gdn-region'
x-gdn-requestid:
schema:
$ref: '#/components/schemas/headers/x-gdn-requestid'
'400':
description: Failed due to missing or malformed data. Verify that all parameters are complete.
content:
application/json:
schema:
$ref: '#/components/schemas/error_example_rc_400'
headers:
x-gdn-region:
schema:
$ref: '#/components/schemas/headers/x-gdn-region'
x-gdn-requestid:
schema:
$ref: '#/components/schemas/headers/x-gdn-requestid'
'404':
description: Failed to find specified collection.
content:
application/json:
schema:
$ref: '#/components/schemas/error_example_rc_404'
headers:
x-gdn-region:
schema:
$ref: '#/components/schemas/headers/x-gdn-region'
x-gdn-requestid:
schema:
$ref: '#/components/schemas/headers/x-gdn-requestid'
summary: Remove collection
tags:
- Collections
get:
description: Fetch the information about collection.
operationId: handleCommandGet:collectionGetProperties
parameters:
- in: path
name: fabric
required: true
description: The name of the fabric.
schema:
type: string
format: string
default: _system
- description: The name of the collection.
in: path
name: collection-name
required: true
schema:
type: string
format: string
responses:
'200':
description: Successfully fetched collection.
content:
application/json:
schema:
$ref: '#/components/schemas/api_collection_get_collection_name_http_examples_rc_200'
headers:
x-gdn-region:
schema:
$ref: '#/components/schemas/headers/x-gdn-region'
x-gdn-requestid:
schema:
$ref: '#/components/schemas/headers/x-gdn-requestid'
'400':
description: Failed due to missing or malformed data. Verify that all parameters are complete.
content:
application/json:
schema:
$ref: '#/components/schemas/error_example_rc_400'
headers:
x-gdn-region:
schema:
$ref: '#/components/schemas/headers/x-gdn-region'
x-gdn-requestid:
schema:
$ref: '#/components/schemas/headers/x-gdn-requestid'
'403':
description: Failed to validate because you do not have access to the server.
content:
application/json:
schema:
$ref: '#/components/schemas/error_example_rc_403'
headers:
x-gdn-region:
schema:
$ref: '#/components/schemas/headers/x-gdn-region'
x-gdn-requestid:
schema:
$ref: '#/components/schemas/headers/x-gdn-requestid'
'404':
description: Failed to find specified collection.
content:
application/json:
schema:
$ref: '#/components/schemas/error_example_rc_404'
headers:
x-gdn-region:
schema:
$ref: '#/components/schemas/headers/x-gdn-region'
x-gdn-requestid:
schema:
$ref: '#/components/schemas/headers/x-gdn-requestid'
summary: Get the information about collection
tags:
- Collections
/_fabric/{fabric}/_api/collection/{collection-name}/workflows:
get:
description: Retrieve details of assigned workflows to a collection.
parameters:
- $ref: '#/components/parameters/Fabric'
- $ref: '#/components/parameters/Collection'
summary: Get workflows
tags:
- Collections
operationId: getWorkflows
responses:
'200':
description: Successfully fetched the workflows assigned to the collection.
content:
application/json:
schema:
title: WorkflowsResponse
allOf:
- $ref: '#/components/schemas/ResponseBase'
- type: object
properties:
result:
type: array
items:
$ref: '#/components/schemas/WorkflowEntity'
headers:
x-gdn-region:
schema:
$ref: '#/components/schemas/headers/x-gdn-region'
x-gdn-requestid:
schema:
$ref: '#/components/schemas/headers/x-gdn-requestid'
'401':
description: Failed to authenticate the request.
content:
application/json:
schema:
$ref: '#/components/schemas/error_example_rc_401'
headers:
x-gdn-region:
schema:
$ref: '#/components/schemas/headers/x-gdn-region'
x-gdn-requestid:
schema:
$ref: '#/components/schemas/headers/x-gdn-requestid'
'404':
description: Failed to find specified collection.
content:
application/json:
schema:
$ref: '#/components/schemas/error_example_rc_404'
headers:
x-gdn-region:
schema:
$ref: '#/components/schemas/headers/x-gdn-region'
x-gdn-requestid:
schema:
$ref: '#/components/schemas/headers/x-gdn-requestid'
post:
description: Create a new workflow to an external data source or target from an existing collection.
summary: Create a workflow
tags:
- Collections
parameters:
- $ref: '#/components/parameters/Fabric'
- $ref: '#/components/parameters/Collection'
operationId: createWorkflow
requestBody:
description: Workflow definition.
required: true
content:
application/json:
schema:
type: object
additionalProperties: true
responses:
'201':
description: Successfully created the workflow.
content:
application/json:
schema:
title: WorkflowResponse
allOf:
- $ref: '#/components/schemas/ResponseBase'
- type: object
properties:
result:
$ref: '#/components/schemas/WorkflowEntity'
headers:
x-gdn-region:
schema:
$ref: '#/components/schemas/headers/x-gdn-region'
x-gdn-requestid:
schema:
$ref: '#/components/schemas/headers/x-gdn-requestid'
'400':
description: Failed due to missing or malformed data. Verify that all parameters are complete.
content:
application/json:
schema:
$ref: '#/components/schemas/error_example_rc_400'
headers:
x-gdn-region:
schema:
$ref: '#/components/schemas/headers/x-gdn-region'
x-gdn-requestid:
schema:
$ref: '#/components/schemas/headers/x-gdn-requestid'
'401':
description: Failed to authenticate the request.
content:
application/json:
schema:
$ref: '#/components/schemas/error_example_rc_401'
headers:
x-gdn-region:
schema:
$ref: '#/components/schemas/headers/x-gdn-region'
x-gdn-requestid:
schema:
$ref: '#/components/schemas/headers/x-gdn-requestid'
/_fabric/{fabric}/_api/collection/{collection-name}/workflows/{workflow-name}:
delete:
description: Remove a workflow from a collection.
summary: Remove workflow
tags:
- Collections
parameters:
- $ref: '#/components/parameters/Fabric'
- $ref: '#/components/parameters/Collection'
- $ref: '#/components/parameters/Workflow'
operationId: deleteWorkflow
responses:
'200':
description: Successfully deleted the workflow.
content:
application/json:
schema:
$ref: '#/components/schemas/DeletedResponse'
headers:
x-gdn-region:
schema:
$ref: '#/components/schemas/headers/x-gdn-region'
x-gdn-requestid:
schema:
$ref: '#/components/schemas/headers/x-gdn-requestid'
'401':
description: Failed to authenticate the request.
content:
application/json:
schema:
$ref: '#/components/schemas/error_example_rc_401'
headers:
x-gdn-region:
schema:
$ref: '#/components/schemas/headers/x-gdn-region'
x-gdn-requestid:
schema:
$ref: '#/components/schemas/headers/x-gdn-requestid'
'404':
description: Failed to find specified collection or workflow.
content:
application/json:
schema:
$ref: '#/components/schemas/error_example_rc_404'
headers:
x-gdn-region:
schema:
$ref: '#/components/schemas/headers/x-gdn-region'
x-gdn-requestid:
schema:
$ref: '#/components/schemas/headers/x-gdn-requestid'
/_fabric/{fabric}/_api/collection/{collection-name}/metadata:
parameters:
- $ref: '#/components/parameters/Fabric'
- $ref: '#/components/parameters/Collection'
get:
description: Retrieve metadata related to the collection.
summary: Retrieve additional collection metadata
tags:
- Collections
operationId: getMetadata
responses:
'200':
description: Successfully retrieved metadata of a collection.
content:
application/json:
schema:
$ref: '#/components/schemas/CollectionMetadataResponse'
headers:
x-gdn-region:
schema:
$ref: '#/components/schemas/headers/x-gdn-region'
x-gdn-requestid:
schema:
$ref: '#/components/schemas/headers/x-gdn-requestid'
'401':
description: Failed to authenticate the request.
content:
application/json:
schema:
$ref: '#/components/schemas/error_example_rc_401'
headers:
x-gdn-region:
schema:
$ref: '#/components/schemas/headers/x-gdn-region'
x-gdn-requestid:
schema:
$ref: '#/components/schemas/headers/x-gdn-requestid'
'404':
description: Failed to find the metadata entry for the collection.
content:
application/json:
schema:
$ref: '#/components/schemas/error_example_rc_404'
headers:
x-gdn-region:
schema:
$ref: '#/components/schemas/headers/x-gdn-region'
x-gdn-requestid:
schema:
$ref: '#/components/schemas/headers/x-gdn-requestid'
put:
description: Update metadata related to the collection.
summary: Update collection metadata
tags:
- Collections
operationId: updateMetadata
requestBody:
description: Metadata to update. Not all fields of metadata entity can be updated. You can only update the object properties of workflows.
required: true
content:
application/json:
schema:
type: object
title: CollectionMetadataUpdateEntity
properties:
workflows:
type: array
items:
$ref: '#/components/schemas/WorkflowMetadataEntity'
responses:
'200':
description: Successfully updated metadata of the collection.
content:
application/json:
schema:
type: object
title: CollectionMetadataUpdateResponse
allOf:
- $ref: '#/components/schemas/ResponseBase'
- type: object
properties:
result:
type: object
title: CollectionMetadataUpdateResponseEntity
properties:
_key:
type: string
example: 123456
_rev:
type: string
example: _3er45_
headers:
x-gdn-region:
schema:
$ref: '#/components/schemas/headers/x-gdn-region'
x-gdn-requestid:
schema:
$ref: '#/components/schemas/headers/x-gdn-requestid'
'400':
description: Failed due to missing or malformed data. Verify that all parameters are complete.
content:
application/json:
schema:
$ref: '#/components/schemas/error_example_rc_400'
headers:
x-gdn-region:
schema:
$ref: '#/components/schemas/headers/x-gdn-region'
x-gdn-requestid:
schema:
$ref: '#/components/schemas/headers/x-gdn-requestid'
'401':
description: Failed to authenticate the request.
content:
application/json:
schema:
$ref: '#/components/schemas/error_example_rc_401'
headers:
x-gdn-region:
schema:
$ref: '#/components/schemas/headers/x-gdn-region'
x-gdn-requestid:
schema:
$ref: '#/components/schemas/headers/x-gdn-requestid'
'404':
description: Failed to find the metadata entry for the collection.
content:
application/json:
schema:
$ref: '#/components/schemas/error_example_rc_404'
headers:
x-gdn-region:
schema:
$ref: '#/components/schemas/headers/x-gdn-region'
x-gdn-requestid:
schema:
$ref: '#/components/schemas/headers/x-gdn-requestid'
/_fabric/{fabric}/_api/collection/{collection-name}/reload:
put:
description: Truncate the collection and reload data from source connection.
summary: Truncate and reload data
tags:
- Collections
operationId: reloadCollection
parameters:
- $ref: '#/components/parameters/Fabric'
- $ref: '#/components/parameters/Collection'
responses:
'200':
description: Successfully reloaded collection.
content:
application/json:
schema:
$ref: '#/components/schemas/ResponseBase'
headers:
x-gdn-region:
schema:
$ref: '#/components/schemas/headers/x-gdn-region'
x-gdn-requestid:
schema:
$ref: '#/components/schemas/headers/x-gdn-requestid'
'401':
description: Failed to authenticate the request.
content:
application/json:
schema:
$ref: '#/components/schemas/error_example_rc_401'
headers:
x-gdn-region:
schema:
$ref: '#/components/schemas/headers/x-gdn-region'
x-gdn-requestid:
schema:
$ref: '#/components/schemas/headers/x-gdn-requestid'
'404':
description: Failed to find specified collection.
content:
application/json:
schema:
$ref: '#/components/schemas/error_example_rc_404'
headers:
x-gdn-region:
schema:
$ref: '#/components/schemas/headers/x-gdn-region'
x-gdn-requestid:
schema:
$ref: '#/components/schemas/headers/x-gdn-requestid'
/_fabric/{fabric}/_api/collection/{collection-name}/count:
get:
description: 'Retrieve the count of documents within the collection.
**Note**: This always loads the collection into memory.'
operationId: handleCommandGet:getCollectionCount
parameters:
- in: path
name: fabric
required: true
description: The name of the fabric.
schema:
type: string
format: string
default: _system
- description: The name of the collection.
in: path
name: collection-name
required: true
schema:
type: string
format: string
responses:
'200':
description: Successfully fetched number of documents in a collection.
content:
application/json:
schema:
$ref: '#/components/schemas/api_collection_get_count_examples_rc_200'
headers:
x-gdn-region:
schema:
$ref: '#/components/schemas/headers/x-gdn-region'
x-gdn-requestid:
schema:
$ref: '#/components/schemas/headers/x-gdn-requestid'
'400':
description: Failed due to missing or malformed data. Verify that all parameters are complete.
content:
application/json:
schema:
$ref: '#/components/schemas/error_example_rc_400'
headers:
x-gdn-region:
schema:
$ref: '#/components/schemas/headers/x-gdn-region'
x-gdn-requestid:
schema:
$ref: '#/components/schemas/headers/x-gdn-requestid'
'404':
description: Failed to find specified collection.
content:
application/json:
schema:
$ref: '#/components/schemas/error_example_rc_404'
headers:
x-gdn-region:
schema:
$ref: '#/components/schemas/headers/x-gdn-region'
x-gdn-requestid:
schema:
$ref: '#/components/schemas/headers/x-gdn-requestid'
summary: Get number of documents in a collection
tags:
- Collections
/_fabric/{fabric}/_api/collection/{collection-name}/figures:
get:
description: 'Returns an object containing statistics about a collection.
**Note**: This always loads the collection into memory.'
operationId: handleCommandGet:collectionFigures
parameters:
- in: path
name: fabric
required: true
description: The name of the fabric.
schema:
type: string
format: string
default: _system
- description: The name of the collection.
in: path
name: collection-name
required: true
schema:
type: string
format: string
responses:
'200':
description: Returns information about the collection.
content:
application/json:
schema:
$ref: '#/components/schemas/get_api_collection_figures_rc_200'
headers:
x-gdn-region:
schema:
$ref: '#/components/schemas/headers/x-gdn-region'
x-gdn-requestid:
schema:
$ref: '#/components/schemas/headers/x-gdn-requestid'
'400':
description: Failed due to missing or malformed data. Verify that all parameters are complete.
content:
application/json:
schema:
$ref: '#/components/schemas/error_example_rc_400'
headers:
x-gdn-region:
schema:
$ref: '#/components/schemas/headers/x-gdn-region'
x-gdn-requestid:
schema:
$ref: '#/components/schemas/headers/x-gdn-requestid'
'404':
description: Failed to find specified collection.
content:
application/json:
schema:
$ref: '#/components/schemas/error_example_rc_404'
headers:
x-gdn-region:
schema:
$ref: '#/components/schemas/headers/x-gdn-region'
x-gdn-requestid:
schema:
$ref: '#/components/schemas/headers/x-gdn-requestid'
summary: Return figures of a collection
tags:
- Collections
/_fabric/{fabric}/_api/collection/{collection-name}/truncate:
put:
description: Remove all documents from the collection but leaves the indexes intact.
operationId: handleCommandPut:truncateCollection
parameters:
- in: path
name: fabric
required: true
description: The name of the fabric.
schema:
type: string
format: string
default: _system
- description: The name of the collection.
in: path
name: collection-name
required: true
schema:
type: string
format: string
responses:
'200':
description: Successfully removed all the documents.
content:
application/json:
schema:
$ref: '#/components/schemas/api_collection_get_collection_name_http_examples_rc_200'
headers:
x-gdn-region:
schema:
$ref: '#/components/schemas/headers/x-gdn-region'
x-gdn-requestid:
schema:
$ref: '#/components/schemas/headers/x-gdn-requestid'
'400':
description: Failed due to missing or malformed data. Verify that all parameters are complete.
content:
application/json:
schema:
$ref: '#/components/schemas/error_example_rc_400'
headers:
x-gdn-region:
schema:
$ref: '#/components/schemas/headers/x-gdn-region'
x-gdn-requestid:
schema:
$ref: '#/components/schemas/headers/x-gdn-requestid'
'404':
description: Failed to find specified collection.
content:
application/json:
schema:
$ref: '#/components/schemas/error_example_rc_404'
headers:
x-gdn-region:
schema:
$ref: '#/components/schemas/headers/x-gdn-region'
x-gdn-requestid:
schema:
$ref: '#/components/schemas/headers/x-gdn-requestid'
summary: Truncate collection
tags:
- Collections
/_fabric/{fabric}/_api/collection/{collection-name}/properties:
put:
description: Changes the properties of a collection.
operationId: handleCommandPut:modifyProperties
parameters:
- in: path
name: fabric
required: true
description: The name of the fabric.
schema:
type: string
format: string
default: _system
- description: The name of the collection.
in: path
name: collection-name
required: true
schema:
type: string
format: string
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/api_collection_put_properties_http_examples_rc_200'
required: true
responses:
'200':
description: Successfully updated the document.
content:
application/json:
schema:
$ref: '#/components/schemas/api_collection_put_collection_property_http_examples_rc_200'
headers:
x-gdn-region:
schema:
$ref: '#/components/schemas/headers/x-gdn-region'
x-gdn-requestid:
schema:
$ref: '#/components/schemas/headers/x-gdn-requestid'
'400':
description: Failed due to missing or malformed data. Verify that all parameters are complete.
content:
application/json:
schema:
$ref: '#/components/schemas/error_example_rc_400'
headers:
x-gdn-region:
schema:
$ref: '#/components/schemas/headers/x-gdn-region'
x-gdn-requestid:
schema:
$ref: '#/components/schemas/headers/x-gdn-requestid'
'404':
description: Failed to find specified collection.
content:
application/json:
schema:
$ref: '#/components/schemas/error_example_rc_404'
headers:
x-gdn-region:
schema:
$ref: '#/components/schemas/headers/x-gdn-region'
x-gdn-requestid:
schema:
$ref: '#/components/schemas/headers/x-gdn-requestid'
summary: Update collection properties
tags:
- Collections
components:
schemas:
fabric_collection_validate_keyoption:
description: 'Additional options for key generation. If specified, *keyOptions* should be a JSON array containing the following attributes:'
properties:
allowUserKeys:
description: If set to *true*, you can supply a key value in the *_key* attribute of a document. If set to *false*, the key generator creates keys and an error occurs if you add a *_key* value
type: boolean
example: false
increment:
description: Increment value for *autoincrement* key generator. Not used for other key generator types.
type: integer
example: 1
offset:
description: Initial offset value for *autoincrement* key generator. Not used for other key generator types.
type: integer
example: 1
type:
description: 'Specifies the type of the key generator.
- *traditional*: generates numerical keys in ascending order.
- *autoincrement:* generates numerical keys in ascending order with configurable initial offset and spacing.
- *padded:* generates keys of a fixed length (16 bytes) in ascending lexicographical sort order.
- *uuid64*: generates universally unique keys.'
type: string
example: a
# --- truncated at 32 KB (54 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/macrometa/refs/heads/main/openapi/macrometa-collections-api-openapi.yml