Example of using the REST API to retrieve an association


Association is an object that defines relationships in AR System metadata objects. The associations enable you to manage relationships between forms for various AR System functions.

GET associations for single entry

You can use the GET operation to get associations for a particular entry on a form. The following table lists details about this GET operation.

URL qualifier

/entry/{formName/{entryId}/assoc/{AssociationName}

formName - The form for which an entry is to be read. 
entryId - The entry ID.

Method

GET

Header

Header

Value

Authorization

token

(Optional) X-AR-Client-Type

Client Type ID

(Optional) X-AR-RPC-Queue

RPC queue to which the client calls are routed

(Optional) X-AR-Timeout

Timeout (in seconds) for REST request

Default value —120 seconds

(Optional) X-AR-TR-Core-Id

The core ID in a trace ID

(Optional) X-AR-TR-Counter

The counter in a trace ID

(Optional) X-AR-Trace-Id

The complete trace ID

(Optional) X-AR-TR-Is-Counter-Locked

The lock counter

Returns

Returns links for all associated entries.

All possible error codes

If the request is not successful, one of the following error codes are returned:

  • 400 - Request body is incorrect
  • 403 - Forbidden
  • 404 - Form does not exist
  • 500 - Internal Server Error

For more information, see Error-handling-for-the-REST-API.

Example 1

The following example returns all associations on a form as links that show the related entries.

Request URL

/entry/PurchaseOrder/000000000000001?fields=assoc

Response Body

// entry plus links to search for related entries
{
   "values" : {
        ...
    },
   "_links" : {
       "assoc-PurchaseOrderLineItems" : {
           "href" : "/entry/PurchaseOrder/000000000000001/assoc/PurchaseOrderLineItems"
        }
    }
}

Example 2

The following example returns a list of entries for a specific association.

Request URL

/entry/PurchaseOrder/000000000000001?fields=assoc(PurchaseOrderLineItems)

Response Body

// entry plus links to related entries
{
   "values" : {
        ...
   },
   "_links" : {
       "assoc-PurchaseOrderLineItems" : [{
           "href" : "/entry/LineItem/000000000000006"
       }, {
           "href" : "/entry/LineItem/000000000000008"
       }]
   }
}

Example 3

The following example expands the entries returned for an association.

Request URL

/entry/PurchaseOrder/000000000000001?expand=assoc(PurchaseOrderLineItems)

Response Body

// entry plus embedded related entries
{
   "values" : {
        ...
   },
   "_embedded" : {
       "assoc-PurchaseOrderLineItems" : [{
           "values" : {...},
           "_links" : { "self" : { "href" : "/entry/LineItem/000000000000006" } }
       }, {
           "values" : {...},
           "_links" : { "self" : { "href" : "/entry/LineItem/000000000000008" } }
       }]
   }
}

GET associations for multiple entries

You can use the GET operation to get associations for multiple entries on a form. The following table lists details about this GET operation.

URL qualifier

/entry/{formName}?fields=assoc(AssociationName)

formName - The form for which an entry is to be read.

Method

GET

Header

Header

Value

Authorization

token

(Optional) X-AR-Client-Type

Client Type ID

(Optional) X-AR-RPC-Queue

RPC queue to which the client calls are routed

(Optional) X-AR-Timeout

Timeout (in seconds) for REST request

Default value —120 seconds

(Optional) X-AR-TR-Core-Id

The core ID in a trace ID

(Optional) X-AR-TR-Counter

The counter in a trace ID

(Optional) X-AR-Trace-Id

The complete trace ID

(Optional) X-AR-TR-Is-Counter-Locked

The lock counter

Parameters

Name

Description

fields

Selects what parts of the JSON document to return (for example, ?fields=entryId1,entryId2)

q

Search qualification

offset

Offset for the entries to return

limit

Number of entries to limit the result to

sort

Order to sort the results in (for example, ?sort=submitDate.desc)

expand

Expands the related entries (associations).

For more information, see Endpoints-in-AR-REST-API.

Returns

Returns all associations for all the entries on a form.

Errors

If the request is not successful, the following error code is returned:

400 - Request body is incorrect.

For more information, see Error-handling-for-the-REST-API.

Example

Request URL
/entry/PurchaseOrder?q='Status'="Pending"&expand=assoc(PurchaseOrderLineItems)
Response Body
// multiple entries plus embedded related entries
{
   "entries": [
{
   "values" : {
       "Entry ID": "00000000000001",
        ...
   },
   "_embedded" : {
       "assoc-PurchaseOrderLineItems" : [{
           "values" : {...},
           "_links" : { "self" : { "href" : "/entry/LineItem/000000000000006" } }
       }, {
           "values" : {...},
           "_links" : { "self" : { "href" : "/entry/LineItem/000000000000008" } }
       }]
   }
},
{
   "values" : {
       "Entry ID": "00000000000002",
        ...
   },
   "_embedded" : {
       "assoc-PurchaseOrderLineItems" : [{
           "values" : {...},
           "_links" : { "self" : { "href" : "/entry/LineItem/000000000000013" } }
       }]
   }
},
...
]


 

Tip: For faster searching, add an asterisk to the end of your partial query. Example: cert*