Allocations

The Allocation service provides functionality to create, amend and view Allocations across the full set of supported asset classes.

Base Urls

The Allocations service base Urls are as follows:

Service Root

/book-building/allocations

Health Check

/book-building/allocations/hc/status

Swagger/Open API

/book-building/allocations/docs/index.html

API Endpoints

The full list of available API endpoints is show below, with links to the detailed documentation for each. For a concise, structured definition please reference the Swagger/Open API specification.

Name

Method

Url

Description

Search Allocation

Search

/v4/allocations/search

Search Allocations using specified search criteria

Get Allocation

Get

/v4/allocations/{id}

Get a specific Allocation by ID

Create Allocation

Post

/v4/allocations

Create a new Allocation

Delete Allocation by ID

Delete

/v4/allocations/{id}

Delete an Allocation by ID

Delete Allocation by Source ID

Delete

/v4/allocations

Delete an Allocation by source ID

Update Allocation

Put

/v4/allocations

Update a specific Allocation

Update Allocation Attribute(s)

Patch

/v4/allocations/{id}

Update a specific attribute of an Allocation by ID

Search Criteria

The search criteria for Orders services is displayed below.

{
        "criteria": [{
                        "field": "string",
                        "operator": "=",
                        "value": "string"
                }
        ]
}

Search Allocation

The search Allocation endpoint provides a way of accessing a collection of Allocation objects based on the specified search fields.

Authorization

In order to access the Allocations information, it is required to have the allocations-read scope in the access token.

Parameters

The parameters that this endpoint accepts are shown in the table below, with a description and default values identified.

Name

Type

Format

Description

Default

page

integer

Form Data

See Pagination

1

pageSize

integer

Form Data

See Pagination

250

projection

string

Form Data

Filters a specific field to return in the response.

null

criteria

array[object]

Form Data

See Search Criteria

null

sortFields

array[object]

Form Data

Filters the search using specified criteria.

Private

Response

The endpoint returns a JSON payload containing a paginated array of Allocation Objects. The pagination is in the standard CAS format as described in Pagination.

Get Allocation

The get Allocation endpoint provides a way of accessing a specific Allocation object by id.

Authorization

In order to access the allocations information, it is required to have the allocations-read scope in the access token.

Parameters

The parameters that this endpoint accepts are shown in the table below, with a description and default values identified.

Name

Type

Format

Description

Default

id

UUID

URL path

The unique CAS id of the Allocation to retrieve

Response

The endpoint returns a JSON payload containing an Allocation Object.

Create Allocation

The Create Allocation endpoint provides a way of creating an Allocation object in the CAS system.

Authorization

In order to create a new Allocation, it is required to have the allocations-write scope in the access token.

Parameters

This endpoint accepts an Allocation object as its body.

Response

The endpoint returns a JSON payload containing the newly created Allocation Object.

Delete Allocation by ID

The Delete Allocation endpoint provides a way of deleting an Allocation object in the CAS system.

Authorization

In order to access the Allocations information, it is required to have the allocations-write scope in the access token.

Parameters

Name

Type

Format

Description

Default

id

UUID

URL path

The unique CAS id of the Allocation to delete

Response

The endpoint returns a 200 OK response when the item is properly deleted.

Delete Allocation by Source ID

The Delete Allocation endpoint provides a way of deleting an Allocation object by source application ID.

Authorization

In order to access the Allocations information, it is required to have the allocations-write scope in the access token.

Parameters

Name

Type

Format

Description

Default

sourceId

UUID

Querystring

The unique source id of the Allocation to retrieve

Response

The endpoint returns a 200 OK response when the item is properly deleted.

Update Allocation

The Update Allocation endpoint provides a way of updating a specific Allocation object.

Authorization

In order to access the allocations information, it is required to have the allocations-write scope in the access token.

Parameters

The parameters that this endpoint accepts are shown in the table below, with a description and default values identified.

Name

Type

Format

Description

Default

id

UUID

URL path

The unique CAS id of the Allocation to retrieve

Response

The endpoint returns a JSON payload containing the new, updated Allocation Object.

Update Allocation Attribute(s)

The Update Allocation Attribute(s) endpoint provides a way of updating specific fields of an existing Allocation object.

Authorization

In order to access the Allocations information, it is required to have the allocations-write scope in the access token.

Parameters

The parameter that this endpoint accepts is a list of fields for the Allocation object to be updated.

[
    {
        "value": {},
        "path": "string",
        "op": "string",
        "from": "string"
    }
]

Response

The endpoint returns a JSON payload containing the newly updated Allocation Object.

Schema

The Allocation object structure is shown below, and underneath, each element is described in detail.

Example JSON

{
  "createdBy": "string",
  "createdDateTime": "2020-04-09T04:36:37.423Z",
  "lastModifiedBy": "string",
  "lastModifiedDateTime": "2020-04-09T04:36:37.423Z",
  "dealId": "string",
  "trancheId": "string",
  "sourceId": "string",
  "investorAccountId": "string",
  "indicationId": "string",
  "companyId": 0,
  "sourceRowVersion": "string",
  "orderStatus": "pending",
  "indicationGroupId": "string",
  "statusMessages": [
        {
          "code": "string",
          "message": "string"
        }
  ],
  "allocationValue": {
        "type": "cash",
        "data": {
          "amount": 0
        },
        "overrideAllocation": {
          "type": "cash",
          "data": {
                "amount": 0
          }
        }
  },
  "distributionType": "manual",
  "comment": {
        "comments": [
          {
                "commentType": "public",
                "comment": "string",
                "lastModifiedBy": "string",
                "lastModifiedDateTime": "2020-04-09T04:36:37.423Z"
          }
        ]
  },
  "detail": {
        "order": {
          "affirmation": {
                "isAffirmed": true,
                "modifiedBy": "string",
                "modifiedDateTime": "2020-04-09T04:36:37.423Z"
          }
        }
  }
}

Allocation Value Object

createdBy

Represents user Id who creates this allocation.

createdDateTime

Created datetime for this allocation.

lastModifiedBy

Represents user Id who last modified this allocation.

lastModifiedDateTime

Last modified datetime for this allocation.

dealId

Represents the id of the deal this allocation belongs to.

trancheId

Represents the id of the tranche this allocation belongs to.

sourceId

Id of this allocation in the source application, if it exists.

investorAccountId

Represents the investor Account id this allocation is tied to.

indicationId

Represents the id of indication this allocation belongs to.

companyId

Company id representing who placed the Allocation.

sourceRowVersion

Used to reference the row version in the source application, if exists.

orderStatus

Represents the order’s current status. Valid values are pending, delivered, successful, failed or deletePending.

indicationGroupId

Represents the id of the Indication group for this Allocation.

statusMessages.code

Represents the code of the status message.

statusMessages.message

Contains the contents of the status message.

allocationValue.type

Represents the type of value used for this allocation. Valid values are cash or quantity.

allocationValue.data.amount

Represents the amount of an Allocation, in respective value type.

distributionType

Represents the distribution type. Valid values are manual, auto or none.

detail.order.affirmation.isAffirmed

Boolean value representing the affirmation status of the Allocation.