New Gra.fo API: Export document as TTL or OWL

Head over the Gra.fo API Documentation to learn more about how to use the Gra.fo public API to export your model as TTL or OWL. The export API is designed for use with build scripts, version control tools, integrations, or to upload your model into other tools, like data.world.

Fun fact: Ever wonder why our adorable mascot, Sparkle, is an OWL? Now you know!

Looking for the API Documentation? We've added a link to the user menu in Gra.fo:

Gra.fo supports several additional export formats from the document page. These options can be found under the File menu.


March 2021 monthly product update

Here is a roundup of some of the key features we released last month, February 2021 -- Looker metadata support, custom metadata field default edit behavior improvements, Gra.fo enhancements, and dataset sync webhook notifications.

Gra.fo navigation and linking improvements

Check out recent UX improvements to Gra.fo, our visual knowledge graph modeling tool. 

  1. To quickly zoom out to see the full graph, use the keyboard shortcut:
    OPTION (ALT) + SHIFT + 0
  2. To zoom to a specific concept:
    OPTION (ALT) + SHIFT + click concept
  3. You can now deeplink directly to a concept in the graph using the Copy link to concept option in the concept menu. Watch the video to see how we use this feature to move fluidly between a data.world catalog and Gra.fo.

Gra.fo is a companion product to data.world with a 30 day free trial of premium team features. Visit Gra.fo to learn more, or reach out to help@data.world.

New metadata collector in private beta: Looker

We're proud to announce a new metadata collector is now available for enterprise customer use in private beta -- Looker (business intelligence). Let us know if you'd like to get your hands on the early version of this collector.

As we get closer to general availability, we'll be releasing more information on these exciting expanded metadata and discovery capabilities!


February 2021 monthly product update

Here is a roundup of some of the key features we released last month, January 2021 -- broader resource support for recently viewed resources and auto suggestions from the search bar, collection search filter/facet, collection management API, and enhanced SQL support for windowed aggregations.

Bulk editing collection resources

We've been rolling out a series of features to make working with collections easier and more intuitive on data.world. In case you missed it, here a few recent collections related updates:

  1. New Collection Management API
  2. Quick Collection Creation
  3. Editing Resource Collections
  4. Filtering Collections In Search

Most recently, we've released bulk editing collections, which allows you to quickly manage a large number of resources by adding and removing them from collections with just a few clicks. 

Screenshot Walk-through

Using business terms as our example, we'll start off by clicking the "triple dot" menu and selecting "Edit multiple Business terms":

Select all the resources you want to edit:

Chose "Add to existing" to add the resources to an additional collection:

Review your changes:

After confirming, you'll see a message like this:

Quick Video Demo


New Dataset Sync Notifications

data.world now sends 2 additional webhooks: Dataset Sync Failure and Dataset Sync Recovery Success

When a dataset within your org fails to sync, data.world will immediately send a webhook message to the configured URL with details about the failure, including error code and error messages from the downstream source.

With those sync failure details, you could configure a ticket to be created in your ticketing system, trigger an alert for a dev-ops team, or simply just make the team aware of the issue.

Natively, data.world will format the webhook payload to post messages in Slack when it recognizes the configured webhook is Slack, which is shown in the demo video below.

Demo


Screenshots


Technical Details

syncTask.status.success is triggered only after the recovery from a failure. 

Example payload, in JSON:

{
  "datasetid": "sync-demo",
  "event": {
    "type": "SUCCESS",
    "task": "state_table.csv",
    "created": "2021-02-04T06:37:06.936Z"
  },
  "eventType": "syncTask.status.success",
  "resourceUrl": "https://data.world/texas-whiskey/sync-demo/file/state_table.csv",
  "resourceType": "URL",
  "resourceOwner": "texas-whiskey"
}

 syncTask.status.failure is triggered on the first failure for that file. When it recovers, data.world will send one syncTask.status.success

Example payload, in JSON:

{
  "datasetid": "sync-demo",
  "event": {
    "type": "FAILURE",
    "task": "state_table.csv",
    "created": "2021-02-04T06:35:17.945Z",
    "error": "HTTP/1.1 404 Not Found"
  },
  "eventType": "syncTask.status.failure",
  "resourceUrl": "https://data.world/texas-whiskey/sync-demo/file/state_table.csv",
  "resourceType": "URL",
  "resourceOwner": "texas-whiskey"
}
Show Previous EntriesShow Previous Entries