Activity Stream (api/ActivityStream)
Read-only feed of what happened to an asset — who did what, when — with verb filtering and date-anchored paging.
Read-only feed of what happened to an asset — who did what, when — with verb filtering and date-anchored paging.
Base URLs, HTTP headers, error shapes and terminology shared by every Agility API.
Turn an OID or an asset Number into a clickable link that opens the asset in the Agility UI.
Upload and download attachment and image binaries. Two workflows, a family of blob endpoints, and an id format that is not an OID token.
Where to find the normative attribute-path and filter-expression grammar shared by every Agility query surface.
How to build the base URL that every Agility API request is relative to, from your instance host and instance name.
Create, update, query and invoke operations on many assets in a single request against ~/api/asset.
api/canbeimportant — asks, for a batch of attribute definitions, which ones can be flagged as important. Unknown tokens are silently dropped.
Decide between query.v1, rest-1.v1, api/asset and meta.v1 for your Agility integration.
A capstone Bulk API example that creates a project hierarchy, invokes an operation on a newly created asset, and queries the result in one request.
Read an instance's effective configuration - attachment size limit, time zone, effort tracking - without authentication.
Create a webhook subscription with POST ~/api/webhook.
Create one asset, many assets, or a whole hierarchy in a single Bulk API request.
How Accept-Language maps to a localizer, how the specific/neutral/default fallback chain works, and what happens when a culture is partially or wholly unmatched.
api/customFields — the custom fields visible for a given asset. A POST endpoint despite reading nothing but metadata.
How Agility stores date ranges. EndDate is exclusive — midnight of the day after the range ends — which is the source of most off-by-one errors against the API.
Turn localization off to see raw localization tags instead of localized text — the fastest way to find out which tag drives a piece of UI or an API label.
Delete a webhook subscription with POST ~/api/webhook/delete/:id — note the verb and the path shape.
Inspect the 20 most recent delivery receipts for a subscription to troubleshoot webhooks that are not arriving.
Developer reference for the Digital.ai Agility API: endpoints, query syntax, and the behaviour you can rely on.
The HTTP status codes the Agility APIs return, what each one means, and how to read the error payload.
How the Bulk API reports partial failure, how failures cascade through a hierarchy, and how to correct and reissue a failed request safely.
Describe exactly which asset changes should fire a webhook using type, from, attributes, filter, with, userContext and select.
Discover which attributes are appropriate to show a user for a given asset type, scope and licence — api/visibleFields, api/visibleFieldsByAsset, api/customFields and api/canbeimportant.
Conditionally replace substrings in text attributes and swap references in multi-value relations across many assets at once.
Learn how to authenticate and make your first API calls to Digital.ai Agility
How Agility picks up edited localization template files without a restart, and the ETag caveat that can hide the change from HTTP clients.
The Authorization, Content-Type and Accept headers required by every Agility API request, and what each one controls.
Execute Agility operations against one asset or every asset matching a query, with args, list, and subquery parameter forms.
The localization API and the localizer engine behind it: term stacks, nested substitution, culture fallback, template set overrides, hot reload and noloc.
Collapse several tags into one across every asset with POST ~/api/tags/command/merge.
Discover the asset types, attribute definitions and operations your Agility instance actually supports, before you address them through rest-1.v1.
How {} placeholders inside a localization template are resolved recursively, how numeric term indices work, and how literal braces are escaped.
Use ?previewOnly=true to stop a Bulk API request after the projection phase and inspect exactly what it would do.
Read which members hold which roles on which projects. A read-only, self-describing endpoint that publishes its own RAML specification.
The two-phase execution model behind the Bulk API, auto-aliasing, user-aliasing, request hierarchy flattening, and deferred commands.
Issue one or many independent queries in a Bulk API request and read the multi-result-set response.
Retrieve usage counts for a single tag with GET ~/api/tags?tag=<tag>.
Retrieve the activity feed for an asset, with a field-by-field walkthrough of the response.
Retrieve every tag in use across the instance with usage counts, via GET ~/api/tags/all.
Retrieve Agility assets with flexible filtering, sorting, and pagination
List webhook subscriptions with paging, or retrieve one by id.
Purge tags from every asset carrying them with POST ~/api/tags/command/remove.
Content types, the JSON-array and YAML-multi-document forms, the response envelope, resultMetaData, and config counts-only.
Methods, query-string syntax, response shapes, authentication, errors and caching for the loc-2.v1 localization endpoint.
Query, create, update and operate on Agility assets over HTTP, including full historical access through the Hist namespace.
api/teamroom and api/planningroom — list, install, remove and update the panels in a room, including the planning-room panel configuration payload and its perspective override.
api/teamroom and api/planningroom — configure the panels shown in a Team Room or Planning Room.
Substring-match tag names with GET ~/api/tags/command/search?term=<term>.
How the Agility localizer resolves a tag through a stack of terms, from most specific to least specific, and what wins.
Query, search, merge and remove asset tags instance-wide through ~/api/tags.
The text file format behind Agility localization template sets: naming, UTF-8 encoding, comments, escaping, multi-line values and deletions.
How Base, edition and Company template sets stack, how later sets override earlier ones, how an empty value deletes an entry, and what Agility actually loads.
Asset, asset type, asset state, attribute definition and Oid — the five terms the Agility API vocabulary is built from.
api/localization and api/localizations — read and write the terminology overrides that sit at the top of the localization resolution stack.
Change a webhook subscription with POST ~/api/webhook/:id.
Update a single asset by OID token, or every asset matching a query, in one Bulk API request.
The complete add/remove grammar for multi-value relations on the Bulk API, including object-keys, subquery, and mixed forms.
Ask what values a relation attribute may take - the endpoint the application uses to populate its dropdowns, Team Process included.
api/visibleFields and api/visibleFieldsByAsset — the attribute names appropriate to display for an asset type in a scope, or for one specific asset.
Subscribe the calling member to an asset, check whether they are watching it, and list everything they watch.
The JSON Agility POSTs to your endpoint, the headers it sends, and how to verify the HMAC signature.
Subscribe to asset created and changed events and have Agility push them to your system instead of polling.