Complete client-facing DAM interface for Dalim ES FUSiON GraphQL API: - Asset browsing, search with faceted filtering, project/folder navigation - Send To distribution to 17 MMS platforms (PIM, Social, Google, In-Store, Print) - 10 workflow templates, approval queue, process monitor with progress bars - Collections with thumbnail mosaics, dashboard with KPI cards and activity feed - Docker Compose (app + PostgreSQL), mock mode, error boundaries - Two-tier API reference docs (466 operations indexed, 29 detailed) - MediaMarkt branding: Noto Sans Display, #DF0000 red, dark sidebar Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
34 KiB
Dalim ES FUSiON API — Active Endpoint Reference
Detailed documentation for the endpoints actively used in this project.
For a full list of all 466 available operations, see dalim-api-index.md.
Authentication
The API uses OAuth2 with HMAC SHA256 signing.
Token endpoint: https://{HOST}/ES/api/oauth/token
GraphQL endpoint: https://{HOST}/ES/api/graphql
Get a token:
token_data = {
"grant_type": "password",
"client_id": CLIENT_ID,
"client_secret": CLIENT_SECRET,
"username": USERNAME,
"password": PASSWORD
}
response = requests.post(TOKEN_URL, data=token_data)
access_token = response.json()["access_token"]
headers = {"Authorization": f"Bearer {access_token}", "Content-Type": "application/json"}
Dependency chain (must create in this order): Security Profiles → Users → Projects → Assets
System & Auth
connectAs
Type: Mutation
Returns: a JSON!
Enable an Admin to connect to ES as another User. The response is identical to a standard login, a new AccessToken is received.
Arguments:
| Name | Type | Required | Description |
|---|---|---|---|
login |
String! |
Yes | login of the user |
withSecurityProfile |
String |
No | name of a securityProfile |
createIfNotExists |
Boolean |
No | Auto-created user if not exists |
Example Query:
mutation connectAs( $login: String!, $withSecurityProfile: String, $createIfNotExists: Boolean ) { connectAs( login: $login, withSecurityProfile: $withSecurityProfile, createIfNotExists: $createIfNotExists ) }
Example Variables:
{ "login": "abc123", "withSecurityProfile": "abc123", "createIfNotExists": true }
Example Response:
{"data": {"connectAs": {}}}
disconnectAs
Type: Mutation
Returns: a JSON!
When connected as another user, returns to the original login, the current token is revoked. The response is identical to a standard login, a new AccessToken is received. If the AccessToken does not correspond to a user connected as, then nothing append, the current token is still valid.
Example Query:
mutation disconnectAs { disconnectAs }
Example Response:
{"data": {"disconnectAs": {}}}
whoami
Type: Query
Returns: a Whoami!
Example Query:
query whoami { whoami { id user { ...UserFragment } securityProfile { ...UserSecurityProfileFragment } } }
Example Response:
{ "data": { "whoami": { "id": "4", "user": User, "securityProfile": UserSecurityProfile } } }
serverInformation
Type: Query
Returns: a ServerInformation!
Example Query:
query serverInformation { serverInformation { guiClientId authorizationURL accessTokenURL authenticationKeys } }
Example Response:
{ "data": { "serverInformation": { "guiClientId": "abc123", "authorizationURL": "http://www.test.com/", "accessTokenURL": "http://www.test.com/", "authenticationKeys": ["4"] } } }
Users
users
Type: Query
Returns: a UserPagingResponse!
Retrieve visible users by the current logged user
Arguments:
| Name | Type | Required | Description |
|---|---|---|---|
filter |
iFilter |
No | — |
limit |
Int |
No | — |
cursor |
ID |
No | — |
orderBy |
iOrderBy |
No | Default = {property : "id", direction : ASC} |
Example Query:
query users( $filter: iFilter, $limit: Int, $cursor: ID, $orderBy: iOrderBy ) { users( filter: $filter, limit: $limit, cursor: $cursor, orderBy: $orderBy ) { lowerCursor upperCursor hasMoreItems objectList { ...UserFragment } } }
Example Variables:
{ "filter": iFilter, "limit": 123, "cursor": 4, "orderBy": {"property": "id", "direction": "ASC"} }
Example Response:
{ "data": { "users": { "lowerCursor": "4", "upperCursor": "4", "hasMoreItems": true, "objectList": [User] } } }
userById
Type: Query
Returns: [User!]
Retrieve user by id
Arguments:
| Name | Type | Required | Description |
|---|---|---|---|
id |
[ID!]! |
Yes | — |
Example Query:
query userById($id: [ID!]!) { userById(id: $id) { id name description lastModificationDate lastModificationUser { ...UserFragment } creationDate creationUser { ...UserFragment } metadatas { ...MetadataValueFragment } metadataProperties { ...MetadataValueFragment } login userCanLog lang dateFormat unitResolution unitLength color image use2FA channel2FA sessionTimeout workCapacity workCapacityUnit firstName lastName email title company phone phone2 homePhone fax mobilePhone department address { ...AddressFragment } organization { ...OrganizationFragment } groups { ...GroupFragment } roles { ...RoleFragment } defaultProfile { ...UserSecurityProfileFragment } availableProfiles { ...UserSecurityProfileFragment } notifications { ...NotificationFragment } } }
Example Variables:
{"id": ["4"]}
Example Response:
{ "data": { "userById": [ { "id": "4", "name": "abc123", "description": "xyz789", "lastModificationDate": "2007-12-03T10:15:30Z", "lastModificationUser": User, "creationDate": "2007-12-03T10:15:30Z", "creationUser": User, "metadatas": [MetadataValue], "metadataProperties": [MetadataValue], "login": "abc123", "userCanLog": true, "lang": "ar", "dateFormat": "abc123", "unitResolution": "xyz789", "unitLength": "xyz789", "color": "xyz789", "image": "xyz789", "use2FA": true, "channel2FA": "AUTHENTICATOR", "sessionTimeout": 123, "workCapacity": "abc123", "workCapacityUnit": "xyz789", "firstName": "xyz789", "lastName": "abc123", "email": "abc123", "title": "abc123", "company": "xyz789", "phone": "abc123", "phone2": "xyz789", "homePhone": "xyz789", "fax": "abc123", "mobilePhone": "xyz789", "departm
... (truncated)
createUser
Type: Mutation
Returns: a User!
Create an User in the specified Organization
Arguments:
| Name | Type | Required | Description |
|---|---|---|---|
name |
String! |
Yes | — |
in |
ID! |
Yes | — |
setup |
iCreateUserSetup |
No | — |
Example Query:
mutation createUser( $name: String!, $in: ID!, $setup: iCreateUserSetup ) { createUser( name: $name, in: $in, setup: $setup ) { id name description lastModificationDate lastModificationUser { ...UserFragment } creationDate creationUser { ...UserFragment } metadatas { ...MetadataValueFragment } metadataProperties { ...MetadataValueFragment } login userCanLog lang dateFormat unitResolution unitLength color image use2FA channel2FA sessionTimeout workCapacity workCapacityUnit firstName lastName email title company phone phone2 homePhone fax mobilePhone department address { ...AddressFragment } organization { ...OrganizationFragment } groups { ...GroupFragment } roles { ...RoleFragment } defaultProfile { ...UserSecurityProfileFragment } availableProfiles { ...UserSecurityProfileFragment } notifications { ...NotificationFragment } } }
Example Variables:
{ "name": "abc123", "in": 4, "setup": iCreateUserSetup }
Example Response:
{ "data": { "createUser": { "id": 4, "name": "abc123", "description": "xyz789", "lastModificationDate": "2007-12-03T10:15:30Z", "lastModificationUser": User, "creationDate": "2007-12-03T10:15:30Z", "creationUser": User, "metadatas": [MetadataValue], "metadataProperties": [MetadataValue], "login": "xyz789", "userCanLog": false, "lang": "ar", "dateFormat": "abc123", "unitResolution": "xyz789", "unitLength": "xyz789", "color": "xyz789", "image": "abc123", "use2FA": true, "channel2FA": "AUTHENTICATOR", "sessionTimeout": 123, "workCapacity": "xyz789", "workCapacityUnit": "xyz789", "firstName": "xyz789", "lastName": "xyz789", "email": "abc123", "title": "xyz789", "company": "xyz789", "phone": "xyz789", "phone2": "xyz789", "homePhone": "abc123", "fax": "xyz789", "mobilePhone": "abc123", "departme
... (truncated)
changeUser
Type: Mutation
Returns: a User!
Arguments:
| Name | Type | Required | Description |
|---|---|---|---|
name |
String! |
Yes | — |
Example Query:
mutation changeUser($name: String!) { changeUser(name: $name) { id name description lastModificationDate lastModificationUser { ...UserFragment } creationDate creationUser { ...UserFragment } metadatas { ...MetadataValueFragment } metadataProperties { ...MetadataValueFragment } login userCanLog lang dateFormat unitResolution unitLength color image use2FA channel2FA sessionTimeout workCapacity workCapacityUnit firstName lastName email title company phone phone2 homePhone fax mobilePhone department address { ...AddressFragment } organization { ...OrganizationFragment } groups { ...GroupFragment } roles { ...RoleFragment } defaultProfile { ...UserSecurityProfileFragment } availableProfiles { ...UserSecurityProfileFragment } notifications { ...NotificationFragment } } }
Example Variables:
{"name": "abc123"}
Example Response:
{ "data": { "changeUser": { "id": "4", "name": "abc123", "description": "abc123", "lastModificationDate": "2007-12-03T10:15:30Z", "lastModificationUser": User, "creationDate": "2007-12-03T10:15:30Z", "creationUser": User, "metadatas": [MetadataValue], "metadataProperties": [MetadataValue], "login": "xyz789", "userCanLog": true, "lang": "ar", "dateFormat": "xyz789", "unitResolution": "abc123", "unitLength": "abc123", "color": "xyz789", "image": "abc123", "use2FA": true, "channel2FA": "AUTHENTICATOR", "sessionTimeout": 123, "workCapacity": "xyz789", "workCapacityUnit": "xyz789", "firstName": "abc123", "lastName": "xyz789", "email": "xyz789", "title": "abc123", "company": "abc123", "phone": "xyz789", "phone2": "abc123", "homePhone": "abc123", "fax": "abc123", "mobilePhone": "abc123", "departm
... (truncated)
Security Profiles
securityProfiles
Type: Query
Returns: a SecurityProfilePagingResponse!
Retrieve SecurityProfile by filter
Arguments:
| Name | Type | Required | Description |
|---|---|---|---|
filter |
iFilter |
No | — |
limit |
Int |
No | — |
cursor |
ID |
No | — |
orderBy |
iOrderBy |
No | Default = {property : "id", direction : ASC} |
Example Query:
query securityProfiles( $filter: iFilter, $limit: Int, $cursor: ID, $orderBy: iOrderBy ) { securityProfiles( filter: $filter, limit: $limit, cursor: $cursor, orderBy: $orderBy ) { lowerCursor upperCursor hasMoreItems objectList { ...SecurityProfileFragment } } }
Example Variables:
{ "filter": iFilter, "limit": 123, "cursor": "4", "orderBy": {"property": "id", "direction": "ASC"} }
Example Response:
{ "data": { "securityProfiles": { "lowerCursor": 4, "upperCursor": "4", "hasMoreItems": true, "objectList": [SecurityProfile] } } }
createUserSecurityProfile
Type: Mutation
Returns: a UserSecurityProfile
Arguments:
| Name | Type | Required | Description |
|---|---|---|---|
name |
String! |
Yes | — |
setup |
iUserSecurityProfile |
No | — |
Example Query:
mutation createUserSecurityProfile( $name: String!, $setup: iUserSecurityProfile ) { createUserSecurityProfile( name: $name, setup: $setup ) { id name description lastModificationDate lastModificationUser { ...UserFragment } creationDate creationUser { ...UserFragment } properties { ...SecurityPropertyFragment } securityRoles } }
Example Variables:
{ "name": "abc123", "setup": iUserSecurityProfile }
Example Response:
{ "data": { "createUserSecurityProfile": { "id": "4", "name": "xyz789", "description": "xyz789", "lastModificationDate": "2007-12-03T10:15:30Z", "lastModificationUser": User, "creationDate": "2007-12-03T10:15:30Z", "creationUser": User, "properties": [SecurityProperty], "securityRoles": ["ADMIN"] } } }
addProfileToUser
Type: Mutation
Returns: a Boolean!
Add one or many SecurityProfiles to one or many Users
Arguments:
| Name | Type | Required | Description |
|---|---|---|---|
id |
[ID!]! |
Yes | — |
to |
[ID!]! |
Yes | — |
Example Query:
mutation addProfileToUser( $id: [ID!]!, $to: [ID!]! ) { addProfileToUser( id: $id, to: $to ) }
Example Variables:
{"id": ["4"], "to": [4]}
Example Response:
{"data": {"addProfileToUser": true}}
addRoleToUser
Type: Mutation
Returns: a Boolean!
Add one or many Role(s) to one or many User(s)
Arguments:
| Name | Type | Required | Description |
|---|---|---|---|
id |
[ID!]! |
Yes | — |
to |
[ID!]! |
Yes | — |
Example Query:
mutation addRoleToUser( $id: [ID!]!, $to: [ID!]! ) { addRoleToUser( id: $id, to: $to ) }
Example Variables:
{"id": ["4"], "to": [4]}
Example Response:
{"data": {"addRoleToUser": true}}
Projects
projects
Type: Query
Returns: a ProjectPagingResponse!
Retrieve Projects by filter
Arguments:
| Name | Type | Required | Description |
|---|---|---|---|
filter |
iFilter |
No | — |
limit |
Int |
No | — |
cursor |
ID |
No | — |
orderBy |
iOrderBy |
No | Default = {property : "id", direction : ASC} |
Example Query:
query projects( $filter: iFilter, $limit: Int, $cursor: ID, $orderBy: iOrderBy ) { projects( filter: $filter, limit: $limit, cursor: $cursor, orderBy: $orderBy ) { lowerCursor upperCursor hasMoreItems objectList { ...ProjectFragment } } }
Example Variables:
{ "filter": iFilter, "limit": 123, "cursor": "4", "orderBy": {"property": "id", "direction": "ASC"} }
Example Response:
{ "data": { "projects": { "lowerCursor": 4, "upperCursor": 4, "hasMoreItems": true, "objectList": [Project] } } }
projectById
Type: Query
Returns: [Project!]
Retrieve Projects by ID or [ID]
Arguments:
| Name | Type | Required | Description |
|---|---|---|---|
id |
[ID!]! |
Yes | — |
Example Query:
query projectById($id: [ID!]!) { projectById(id: $id) { id name description lastModificationDate lastModificationUser { ...UserFragment } creationDate creationUser { ...UserFragment } trashDate trashUser { ...UserFragment } endDate metadatas { ...MetadataValueFragment } metadataProperties { ...MetadataValueFragment } status workflowName approvalStatus { ...ApprovalActivityStatusFragment } approvalSummary approvals { ...ApprovalCycleFragment } assetApprovals { ...ApprovalCycleFragment } children { ...PagingResponseFragment } assetWorkflow { ...WorkflowFragment } processes { ...ProcessFragment } projectTemplate { ...ProjectTemplateFragment } priority colorSpace { ...ColorSpaceFragment } viewingCondition { ...ViewingConditionFragment } reversedView customer { ...CustomerFragment } parents { ...ContainerFragment } mainAsset { ...AssetFragment } siteId productionParticipants { ...ProductionParticipantFragment } notes { ...NoteFragment } trimmedHeight trimmedWidth nbPages accessControls deadlines { ...ProjectDeadlineFragment } } }
Example Variables:
{"id": [4]}
Example Response:
{ "data": { "projectById": [ { "id": 4, "name": "abc123", "description": "xyz789", "lastModificationDate": "2007-12-03T10:15:30Z", "lastModificationUser": User, "creationDate": "2007-12-03T10:15:30Z", "creationUser": User, "trashDate": "2007-12-03T10:15:30Z", "trashUser": User, "endDate": "2007-12-03T10:15:30Z", "metadatas": [MetadataValue], "metadataProperties": [MetadataValue], "status": ["ACTIVE"], "workflowName": "abc123", "approvalStatus": [ApprovalActivityStatus], "approvalSummary": "NONE", "approvals": [ApprovalCycle], "assetApprovals": [ApprovalCycle], "children": PagingResponse, "assetWorkflow": Workflow, "processes": [Process], "projectTemplate": ProjectTemplate, "priority": 123, "colorSpace": ColorSpace, "viewingCondition": ViewingCondition, "reversedView": true, "customer": Cus
... (truncated)
projectTemplates
Type: Query
Returns: a ProjectTemplateResponse!
Retrieve Project Templates
Arguments:
| Name | Type | Required | Description |
|---|---|---|---|
filter |
iFilter |
No | — |
limit |
Int |
No | — |
cursor |
ID |
No | — |
orderBy |
iOrderBy |
No | Default = {property : "id", direction : ASC} |
Example Query:
query projectTemplates( $filter: iFilter, $limit: Int, $cursor: ID, $orderBy: iOrderBy ) { projectTemplates( filter: $filter, limit: $limit, cursor: $cursor, orderBy: $orderBy ) { lowerCursor upperCursor hasMoreItems objectList { ...ProjectTemplateFragment } } }
Example Variables:
{ "filter": iFilter, "limit": 123, "cursor": 4, "orderBy": {"property": "id", "direction": "ASC"} }
Example Response:
{ "data": { "projectTemplates": { "lowerCursor": 4, "upperCursor": 4, "hasMoreItems": true, "objectList": [ProjectTemplate] } } }
createProject
Type: Mutation
Returns: a Project!
security role handle by the mutationFetcher itself To create a Project for a Customer with a name
Arguments:
| Name | Type | Required | Description |
|---|---|---|---|
customerId |
ID! |
Yes | — |
name |
String! |
Yes | — |
setup |
iProjectSetup |
No | — |
inputs |
[iInputFile!] |
Yes | — |
Example Query:
mutation createProject( $customerId: ID!, $name: String!, $setup: iProjectSetup, $inputs: [iInputFile!] ) { createProject( customerId: $customerId, name: $name, setup: $setup, inputs: $inputs ) { id name description lastModificationDate lastModificationUser { ...UserFragment } creationDate creationUser { ...UserFragment } trashDate trashUser { ...UserFragment } endDate metadatas { ...MetadataValueFragment } metadataProperties { ...MetadataValueFragment } status workflowName approvalStatus { ...ApprovalActivityStatusFragment } approvalSummary approvals { ...ApprovalCycleFragment } assetApprovals { ...ApprovalCycleFragment } children { ...PagingResponseFragment } assetWorkflow { ...WorkflowFragment } processes { ...ProcessFragment } projectTemplate { ...ProjectTemplateFragment } priority colorSpace { ...ColorSpaceFragment } viewingCondition { ...ViewingConditionFragment } reversedView customer { ...CustomerFragment } parents { ...ContainerFragment } mainAsset { ...AssetFragment } siteId productionParticipants { ...ProductionParticipantFragment } notes { ...NoteFragment } trimmedHeight trimmedWidth nbPages accessControls deadlines { ...ProjectDeadlineFragment } } }
Example Variables:
{ "customerId": "4", "name": "xyz789", "setup": iProjectSetup, "inputs": [iInputFile] }
Example Response:
{ "data": { "createProject": { "id": "4", "name": "abc123", "description": "abc123", "lastModificationDate": "2007-12-03T10:15:30Z", "lastModificationUser": User, "creationDate": "2007-12-03T10:15:30Z", "creationUser": User, "trashDate": "2007-12-03T10:15:30Z", "trashUser": User, "endDate": "2007-12-03T10:15:30Z", "metadatas": [MetadataValue], "metadataProperties": [MetadataValue], "status": ["ACTIVE"], "workflowName": "xyz789", "approvalStatus": [ApprovalActivityStatus], "approvalSummary": "NONE", "approvals": [ApprovalCycle], "assetApprovals": [ApprovalCycle], "children": PagingResponse, "assetWorkflow": Workflow, "processes": [Process], "projectTemplate": ProjectTemplate, "priority": 987, "colorSpace": ColorSpace, "viewingCondition": ViewingCondition, "reversedView": true, "customer": C
... (truncated)
deleteProject
Type: Mutation
Returns: a Boolean!
To delete a Project. By default the project is moved to the trash
Arguments:
| Name | Type | Required | Description |
|---|---|---|---|
id |
[ID!]! |
Yes | id of the Project |
now |
Boolean |
No | flag to be able to immediately delete the Project otherwise it is moved to the trash. Default = false |
Example Query:
mutation deleteProject( $id: [ID!]!, $now: Boolean ) { deleteProject( id: $id, now: $now ) }
Example Variables:
{"id": [4], "now": false}
Example Response:
{"data": {"deleteProject": false}}
createFolder
Type: Mutation
Returns: a Folder!
To create a Folder
Arguments:
| Name | Type | Required | Description |
|---|---|---|---|
name |
String! |
Yes | — |
in |
ID! |
Yes | — |
setup |
iFolderSetup |
No | — |
Example Query:
mutation createFolder( $name: String!, $in: ID!, $setup: iFolderSetup ) { createFolder( name: $name, in: $in, setup: $setup ) { id name description lastModificationDate lastModificationUser { ...UserFragment } creationDate creationUser { ...UserFragment } trashDate trashUser { ...UserFragment } metadatas { ...MetadataValueFragment } metadataProperties { ...MetadataValueFragment } readOnly productionSettings { ...ProductionSettingsFragment } processes { ...ProcessFragment } accessControlList { ...AccessControlListFragment } children { ...PagingResponseFragment } project { ...ProjectFragment } parents { ...ContainerFragment } path { ...FolderFragment } color icon } }
Example Variables:
{ "name": "xyz789", "in": 4, "setup": iFolderSetup }
Example Response:
{ "data": { "createFolder": { "id": 4, "name": "xyz789", "description": "abc123", "lastModificationDate": "2007-12-03T10:15:30Z", "lastModificationUser": User, "creationDate": "2007-12-03T10:15:30Z", "creationUser": User, "trashDate": "2007-12-03T10:15:30Z", "trashUser": User, "metadatas": [MetadataValue], "metadataProperties": [MetadataValue], "readOnly": true, "productionSettings": ProductionSettings, "processes": [Process], "accessControlList": AccessControlList, "children": PagingResponse, "project": Project, "parents": [Container], "path": [Folder], "color": "xyz789", "icon": 4 } } }
Assets
assets
Type: Query
Returns: an AssetPagingResponse!
Retrieve Assets by filter
Arguments:
| Name | Type | Required | Description |
|---|---|---|---|
filter |
iFilter |
No | — |
limit |
Int |
No | — |
cursor |
ID |
No | — |
orderBy |
iOrderBy |
No | Default = {property : "id", direction : ASC} |
Example Query:
query assets( $filter: iFilter, $limit: Int, $cursor: ID, $orderBy: iOrderBy ) { assets( filter: $filter, limit: $limit, cursor: $cursor, orderBy: $orderBy ) { lowerCursor upperCursor hasMoreItems objectList { ...AssetFragment } } }
Example Variables:
{ "filter": iFilter, "limit": 987, "cursor": 4, "orderBy": {"property": "id", "direction": "ASC"} }
Example Response:
{ "data": { "assets": { "lowerCursor": "4", "upperCursor": "4", "hasMoreItems": false, "objectList": [Asset] } } }
assetById
Type: Query
Returns: [Asset!]
Retrieve Assets by ID or [ID]
Arguments:
| Name | Type | Required | Description |
|---|---|---|---|
id |
[ID!]! |
Yes | — |
Example Query:
query assetById($id: [ID!]!) { assetById(id: $id) { id name description lastModificationDate lastModificationUser { ...UserFragment } creationDate creationUser { ...UserFragment } trashDate trashUser { ...UserFragment } metadatas { ...MetadataValueFragment } metadataProperties { ...MetadataValueFragment } status approvalSummary approvalStatus { ...ApprovalActivityStatusFragment } approvals { ...ApprovalCycleFragment } workflowName isAlias processes { ...ProcessFragment } uuid priority isCheckedOut checkedOutBy { ...UserFragment } privateWorkingRevision isArchived archiveId colorSpace { ...ColorSpaceFragment } viewingCondition { ...ViewingConditionFragment } project { ...ProjectFragment } parents { ...ContainerFragment } numberOfRevisions expirationDate medias { ...MediaFragment } notes { ...NoteFragment } relationFrom { ...RelationFragment } relationTo { ...RelationFragment } accessControls } }
Example Variables:
{"id": [4]}
Example Response:
{ "data": { "assetById": [ { "id": 4, "name": "xyz789", "description": "abc123", "lastModificationDate": "2007-12-03T10:15:30Z", "lastModificationUser": User, "creationDate": "2007-12-03T10:15:30Z", "creationUser": User, "trashDate": "2007-12-03T10:15:30Z", "trashUser": User, "metadatas": [MetadataValue], "metadataProperties": [MetadataValue], "status": ["ACTIVE"], "approvalSummary": "NONE", "approvalStatus": [ApprovalActivityStatus], "approvals": [ApprovalCycle], "workflowName": "abc123", "isAlias": false, "processes": [Process], "uuid": "abc123", "priority": 987, "isCheckedOut": false, "checkedOutBy": User, "privateWorkingRevision": 987, "isArchived": true, "archiveId": 4, "colorSpace": ColorSpace, "viewingCondition": ViewingCondition, "project": Project, "parents": [Container], "numberO
... (truncated)
createAsset
Type: Mutation
Returns: an AssetCreationStatus!
To create an Asset.
Arguments:
| Name | Type | Required | Description |
|---|---|---|---|
in |
[ID!]! |
Yes | — |
name |
String |
No | — |
checkedOut |
Boolean |
No | Default = false |
setup |
iAssetSetup |
No | — |
input |
iInputFile |
No | — |
Example Query:
mutation createAsset( $in: [ID!]!, $name: String, $checkedOut: Boolean, $setup: iAssetSetup, $input: iInputFile ) { createAsset( in: $in, name: $name, checkedOut: $checkedOut, setup: $setup, input: $input ) { created asset { ...AssetFragment } } }
Example Variables:
{ "in": ["4"], "name": "xyz789", "checkedOut": false, "setup": iAssetSetup, "input": iInputFile }
Example Response:
{ "data": { "createAsset": {"created": false, "asset": Asset} } }
deleteAsset
Type: Mutation
Returns: a Boolean!
To delete an Asset. By default the Asset is moved to the trash
Arguments:
| Name | Type | Required | Description |
|---|---|---|---|
id |
[ID!]! |
Yes | id of the Asset |
now |
Boolean |
No | flag to be able to immediately delete the Asset otherwise it is moved to the trash. Default = false |
Example Query:
mutation deleteAsset( $id: [ID!]!, $now: Boolean ) { deleteAsset( id: $id, now: $now ) }
Example Variables:
{"id": [4], "now": false}
Example Response:
{"data": {"deleteAsset": false}}
downloadAsset
Type: Query
Returns: a Stream
Stream an Asset
Arguments:
| Name | Type | Required | Description |
|---|---|---|---|
id |
ID! |
Yes | — |
revision |
Int |
No | Default = 0 |
Example Query:
query downloadAsset( $id: ID!, $revision: Int ) { downloadAsset( id: $id, revision: $revision ) }
Example Variables:
{"id": "4", "revision": 0}
Example Response:
{"data": {"downloadAsset": Stream}}
Organizations & Customers
customers
Type: Query
Returns: a CustomerPagingResponse!
Retrieve Customers by filter
Arguments:
| Name | Type | Required | Description |
|---|---|---|---|
filter |
iFilter |
No | — |
limit |
Int |
No | — |
cursor |
ID |
No | — |
orderBy |
iOrderBy |
No | Default = {property : "id", direction : ASC} |
Example Query:
query customers( $filter: iFilter, $limit: Int, $cursor: ID, $orderBy: iOrderBy ) { customers( filter: $filter, limit: $limit, cursor: $cursor, orderBy: $orderBy ) { lowerCursor upperCursor hasMoreItems objectList { ...CustomerFragment } } }
Example Variables:
{ "filter": iFilter, "limit": 123, "cursor": 4, "orderBy": {"property": "id", "direction": "ASC"} }
Example Response:
{ "data": { "customers": { "lowerCursor": "4", "upperCursor": 4, "hasMoreItems": false, "objectList": [Customer] } } }
customerById
Type: Query
Returns: [Customer!]
Retrieve Customers by ID or [ID]
Arguments:
| Name | Type | Required | Description |
|---|---|---|---|
id |
[ID!]! |
Yes | — |
Example Query:
query customerById($id: [ID!]!) { customerById(id: $id) { id name description lastModificationDate lastModificationUser { ...UserFragment } creationDate creationUser { ...UserFragment } metadatas { ...MetadataValueFragment } metadataProperties { ...MetadataValueFragment } sites defaultSite defaultProjectTemplate { ...ProjectTemplateFragment } projectTemplates { ...ProjectTemplateFragment } code phone phone2 www fax shippingAddress { ...AddressFragment } billingAddress { ...AddressFragment } organization { ...OrganizationFragment } children { ...PagingResponseFragment } emailTemplates { ...EmailTemplateFragment } notificationTemplates { ...NotificationTemplateFragment } securityConfiguration { ...SecurityConfigurationFragment } notifications { ...NotificationFragment } } }
Example Variables:
{"id": [4]}
Example Response:
{ "data": { "customerById": [ { "id": 4, "name": "abc123", "description": "abc123", "lastModificationDate": "2007-12-03T10:15:30Z", "lastModificationUser": User, "creationDate": "2007-12-03T10:15:30Z", "creationUser": User, "metadatas": [MetadataValue], "metadataProperties": [MetadataValue], "sites": ["abc123"], "defaultSite": "xyz789", "defaultProjectTemplate": ProjectTemplate, "projectTemplates": [ProjectTemplate], "code": "xyz789", "phone": "abc123", "phone2": "abc123", "www": "xyz789", "fax": "abc123", "shippingAddress": Address, "billingAddress": Address, "organization": Organization, "children": PagingResponse, "emailTemplates": [EmailTemplate], "notificationTemplates": [NotificationTemplate], "securityConfiguration": SecurityConfiguration, "notifications": [Notification] } ] } }
groups
Type: Query
Returns: a GroupPagingResponse!
Retrieve visible groups by the current logged user
Arguments:
| Name | Type | Required | Description |
|---|---|---|---|
filter |
iFilter |
No | — |
limit |
Int |
No | — |
cursor |
ID |
No | — |
orderBy |
iOrderBy |
No | Default = {property : "id", direction : ASC} |
Example Query:
query groups( $filter: iFilter, $limit: Int, $cursor: ID, $orderBy: iOrderBy ) { groups( filter: $filter, limit: $limit, cursor: $cursor, orderBy: $orderBy ) { lowerCursor upperCursor hasMoreItems objectList { ...GroupFragment } } }
Example Variables:
{ "filter": iFilter, "limit": 123, "cursor": 4, "orderBy": {"property": "id", "direction": "ASC"} }
Example Response:
{ "data": { "groups": { "lowerCursor": "4", "upperCursor": 4, "hasMoreItems": false, "objectList": [Group] } } }
addUserToGroup
Type: Mutation
Returns: a Boolean!
Add one or many Users to one or many Groups that are not System Groups. All the Users provided will be added to each Groups provided
Arguments:
| Name | Type | Required | Description |
|---|---|---|---|
id |
[ID!]! |
Yes | — |
to |
[ID!]! |
Yes | — |
Example Query:
mutation addUserToGroup( $id: [ID!]!, $to: [ID!]! ) { addUserToGroup( id: $id, to: $to ) }
Example Variables:
{"id": ["4"], "to": [4]}
Example Response:
{"data": {"addUserToGroup": false}}
Search
search
Type: Query
Returns: a SearchResponse
Arguments:
| Name | Type | Required | Description |
|---|---|---|---|
filter |
iSearchFilter! |
Yes | — |
facets |
[String!] |
Yes | — |
limit |
Int |
No | — |
cursor |
ID |
No | — |
Example Query:
query search( $filter: iSearchFilter!, $facets: [String!], $limit: Int, $cursor: ID ) { search( filter: $filter, facets: $facets, limit: $limit, cursor: $cursor ) { upperCursor hasMoreItems objectList { ...EntityFragment } scores facets { ...FacetFragment } } }
Example Variables:
{ "filter": iSearchFilter, "facets": ["abc123"], "limit": 987, "cursor": 4 }
Example Response:
{ "data": { "search": { "upperCursor": "4", "hasMoreItems": false, "objectList": [Entity], "scores": [987.65], "facets": [Facet] } } }
Approvals
approve
Type: Mutation
Returns: a Boolean!
Arguments:
| Name | Type | Required | Description |
|---|---|---|---|
id |
[ID!]! |
Yes | The id(s) of the request approval(s) to approve |
comment |
String |
No | The comment associated to the approve action |
checkViewingCondition |
Boolean |
No | Specify if the viewing condition should be checked or not. Default = true |
Example Query:
mutation approve( $id: [ID!]!, $comment: String, $checkViewingCondition: Boolean ) { approve( id: $id, comment: $comment, checkViewingCondition: $checkViewingCondition ) }
Example Variables:
{ "id": [4], "comment": "xyz789", "checkViewingCondition": true }
Example Response:
{"data": {"approve": true}}
approveObject
Type: Mutation
Returns: a Boolean!
Arguments:
| Name | Type | Required | Description |
|---|---|---|---|
id |
[ID!]! |
Yes | The id(s) of the object(s) to approve |
comment |
String |
No | The comment associated to the approve action |
checkViewingCondition |
Boolean |
No | Specify if the viewing condition should be checked or not. Default = true |
Example Query:
mutation approveObject( $id: [ID!]!, $comment: String, $checkViewingCondition: Boolean ) { approveObject( id: $id, comment: $comment, checkViewingCondition: $checkViewingCondition ) }
Example Variables:
{ "id": [4], "comment": "xyz789", "checkViewingCondition": true }
Example Response:
{"data": {"approveObject": false}}