Skip to content

Xpansiv Connect API (1.0.0-beta)

This is the OpenAPI spec for Xpansiv Connect API. Documentation: https://developer.xpansiv.com/developer-portal/

Languages
Servers
SANDBOX
https://sandbox.preprod.connect.xpansiv.com/app/api/v1/
UAT
https://uat.preprod.connect.xpansiv.com/app/api/v1/
PROD
https://connect.xpansiv.com/app/api/v1/

Account

The Account API allows uses of Xpansiv Connect to pull a list of their registry sub-accounts. As related to the retirement activity, the list reflects the retirement sub-accounts which are required when executing retirements in specific registries or when searching retirement history. The registries with data to return for this call are NEPOOL, M_RETS, NAR, MIRECS, NCRETS, NYGATS, TIGR, CAR, VCS, ACR, RMS AND TERCS.

Operations

Exchange

The Exchange APIs allow users to take various actions, both read and write, for their interactions with execution venues, such as the CBL platform. The Get Accounts API allows the user to pull their active accounts, and the programs associated with those accounts, linked with the execution venue. The Search Deposits API allows the user to search the current deposits placed on execution venues. The Deposit Creation API allows the user to place inventory on deposit on a target execution venue. The Deposit Withdraw API allows the user to withdraw and place back into inventory deposits held on an execution venue. The Deposit Withdraw and Create Retirements API allows the user to withdraw and retire deposits held on an execution venue. The Deposit Settlement API call would be used to settle executed trades on an execution venue by an execution venue operator.

Operations

Forward Deals

The Forward Deals API allows the user to search The Forward Deals associated with their Xpansiv Connect account and/or other Xpansiv Connect accounts that have granted their user that access. Forward Deal information is returned based on a Deal's last updated date. Note that this call has a number of optional fields that the users needs to include if desired in the output.

Operations

Issuances

The Issuance API allows the user to pull information on any Issuances associated with their account, or permissioned account, for the various registries they are linked with. The Instrument details on the Issuance will be returned in the format of a Carbon Instrument (type CARBON) or a REC Instrument (type REC) as appropriate. Each of the types are returned with data specific to the Carbon or REC attributes.

Operations

Portfolio

The Portfolio API allows the user to search their credit inventory (tax lot) data on active positions across all registry accounts linked to their Xpansiv Connect account and/or other Xpansiv Connect accounts that have granted their user that access. Note that This call has a number of optional fields that the user needs to include if desired in the output.

Operations

Projects

The Project API allows the user to pull publicly available information about carbon projects registered in the registries that are integrated with Xpansiv Connect. Note - this call has a number of optional fields that the user needs to include if desired in the output.

Operations

ReferenceData

The Reference Data API enables discovering Xpansiv Connect reference data types and values.

Operations

Reports

The Reports API allows the user to retrieve a comprehensive credit inventory (aka Tax Lot by Program Report) on all active positions with a single call across all registry accounts linked to their Xpansiv Connect account or other Xpansiv Connect accounts that have granted their user that access. Note - this call has a number of optional fields that the user needs to include if desired in the output.

Operations

Retirements

The Retirements APIs allow users to take various actions, both read and write, for their retirement activity. The Create Retirements API allows users of Xpansiv Connect to retire one or more positions from their linked registry accounts and/or other Xpansiv Connect accounts that have granted their API user with that access. The Get Registry Rules API call provides the user with the information required to pass the correct rule attributes specific to each registry with each retirement attempt. The Check Retirement Status API allows users to query the status of their retirements. The Search retirements API allows users search their retirement history. Note - this call has a number of optional fields that the user needs to include if desired in the output.

Operations

Split Lots

The Split Lots API allows the user to search split lot data on their Xpansiv Connect account and/or other Xpansiv Connect accounts that have granted your user that access.

Operations

Transfers

The Transfers APIs allow users to take various actions, both read and write, for their bilateral transaction activity. The Search Transfers API allows the user to search registry transfer data for their Xpansiv Connect account and/or other Xpansiv Connect accounts that have granted your user that access. Note - this call has a number of optional fields that the user needs to include if desired in the output. The Create Transfers API allows the user to create new bilateral transfers. The Cancel Transfers API allows the user to cancel/withdrawal any pending outgoing transfers. The Reject Transfers API allows the user to reject any pending incoming transfer. The Accept Transfers API allows the user to accept any pending incoming transfer.

Operations

Search transfers

Request

Security
bearerToken
Path
AccountIdentifierstringrequired

Account identifier

Example: 098B0A25
Query
pageinteger(int32)
sizeinteger(int32)
includestring

Comma-separated values from optional response fields

Bodyapplication/json
transferIdentifierstring
typestring(TransferType)
Enum"BUY""SELL"
statusesArray of strings(TransferStatus)
Items Enum"NEW""INCOMING""PENDING_APPROVAL""APPROVED""REJECTED""SETTLED""SETTLEMENT_FAILURE""CANCELLED""WITHDRAWN""SETTLED_AS_FORWARD_TRANSFER"
registryStatusesArray of strings(RegistryTransferStatus)
Items Enum"NEW""PENDING_CONFIRMATION""CONFIRMED""REJECTED""WITHDRAWN""EXPIRED""FAILED""PLACE_READY""CONFIRM_READY""REJECT_READY"
lastUpdatedDateFromstring(date-time)
lastUpdatedDateTostring(date-time)
counterpartyNamestring
programsArray of strings(ProgramCode)
curl -i -X POST \
  'https://sandbox.preprod.connect.xpansiv.com/app/api/v1/transfers/account/098B0A25/action/search?page=0&size=0&include=string' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "transferIdentifier": "string",
    "type": "BUY",
    "statuses": [
      "NEW"
    ],
    "registryStatuses": [
      "NEW"
    ],
    "lastUpdatedDateFrom": "2019-08-24T14:15:22Z",
    "lastUpdatedDateTo": "2019-08-24T14:15:22Z",
    "counterpartyName": "string",
    "programs": [
      "string"
    ]
  }'

Responses

List of transfers

Bodyapplication/json
pageinteger(int32)required
sizeinteger(int32)required
totalPagesinteger(int32)required
totalElementsinteger(int64)required
contentArray of objects
Response
application/json
{ "page": 0, "size": 0, "totalPages": 0, "totalElements": 0, "content": [ {} ] }

Create transfers

Request

Allows creation transfers in bulk

Security
bearerToken
Path
AccountIdentifierstringrequired

Account identifier

Example: 098B0A25
ProgramCodestring(ProgramCode)required

Any program code. Ref.Data.REGISTRY_PROGRAM_REGI

Bodyapplication/json
dryRunboolean

If true it will only do the validation of the request but not to create the transfers

counterpartyRegistryNamestringrequired
registryTransferPurposestring(RegistryTransferPurpose)
Enum"SPOT""LONG""REPORTING"
settlementDatestring(date)required

Date when transfers should be settled in EST time zone

showPriceInRegistryboolean

Required for PJM and NEPOOL. Price will be communicated to registry on placement.

notesstring
transfersArray of objectsrequired
transfers[].​externalTransferIdentifierstring
transfers[].​einstringrequired
transfers[].​unitPriceobject(Price)
transfers[].​transferDataanyrequired
transfers[].​transferData.​transferDataTypestringrequired
Default "STRATEGY"
Discriminator
transfers[].​transferData.​taxLotSelectionStrategystringrequired
Enum"NEWEST_TAX_LOT_FIRST""OLDEST_TAX_LOT_FIRST""LARGEST_TAX_LOT_FIRST""SMALLEST_TAX_LOT_FIRST"
transfers[].​transferData.​quantityinteger(int64)>= 1required
curl -i -X POST \
  'https://sandbox.preprod.connect.xpansiv.com/app/api/v1/transfers/account/098B0A25/program/{ProgramCode}/action/create' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "dryRun": true,
    "counterpartyRegistryName": "string",
    "registryTransferPurpose": "SPOT",
    "settlementDate": "2019-08-24",
    "showPriceInRegistry": true,
    "notes": "string",
    "transfers": [
      {
        "externalTransferIdentifier": "string",
        "ein": "string",
        "unitPrice": {
          "currency": "string",
          "amount": 0
        },
        "transferData": {
          "transferDataType": "STRATEGY",
          "taxLotSelectionStrategy": "NEWEST_TAX_LOT_FIRST",
          "quantity": 1
        }
      }
    ]
  }'

Responses

Transfers

Bodyapplication/json
transfersArray of objects
batchIdentifierstring

EMA transfer batch identifier

Response
application/json
{ "transfers": [ {} ], "batchIdentifier": "string" }

Cancel transfers

Request

Allows cancellation transfers in bulk

Security
bearerToken
Path
AccountIdentifierstringrequired

Account identifier

Example: 098B0A25
ProgramCodestring(ProgramCode)required

Any program code. Ref.Data.REGISTRY_PROGRAM_REGI

Bodyapplication/json
dryRunboolean
notesstring
batchIdentifierstring
transfersArray of strings

Transfer identifiers

curl -i -X POST \
  'https://sandbox.preprod.connect.xpansiv.com/app/api/v1/transfers/account/098B0A25/program/{ProgramCode}/action/cancel' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "dryRun": true,
    "notes": "string",
    "batchIdentifier": "string",
    "transfers": [
      "string"
    ]
  }'

Responses

Transfers cancelled successfully

Response
No content

Reject transfers

Request

Allows rejection transfers in bulk

Security
bearerToken
Path
AccountIdentifierstringrequired

Account identifier

Example: 098B0A25
ProgramCodestring(ProgramCode)required

Any program code. Ref.Data.REGISTRY_PROGRAM_REGI

Bodyapplication/json
dryRunboolean
notesstring
transfersArray of strings

Transfer identifiers

curl -i -X POST \
  'https://sandbox.preprod.connect.xpansiv.com/app/api/v1/transfers/account/098B0A25/program/{ProgramCode}/action/reject' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "dryRun": true,
    "notes": "string",
    "transfers": [
      "string"
    ]
  }'

Responses

Transfers rejected successfully

Response
No content

Accept transfers

Request

Allows acceptance transfers in bulk

Security
bearerToken
Path
AccountIdentifierstringrequired

Account identifier

Example: 098B0A25
ProgramCodestring(ProgramCode)required

Any program code. Ref.Data.REGISTRY_PROGRAM_REGI

Bodyapplication/json
dryRunboolean
notesstring
transfersArray of objectsrequired

Transfer identifiers

transfers[].​transferIdentifierstringrequired
transfers[].​externalTransferIdentifierstring
transfers[].​priceobject(Price)required
transfers[].​price.​currencystringrequired

Currency (USD etc...)

transfers[].​price.​amountnumber>= 0required

The numeric value of the price

curl -i -X POST \
  'https://sandbox.preprod.connect.xpansiv.com/app/api/v1/transfers/account/098B0A25/program/{ProgramCode}/action/accept' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "dryRun": true,
    "notes": "string",
    "transfers": [
      {
        "transferIdentifier": "string",
        "externalTransferIdentifier": "string",
        "price": {
          "currency": "string",
          "amount": 0
        }
      }
    ]
  }'

Responses

Transfers accepted successfully

Response
No content

AccountHolders

Operations

Generators

Operations

Instruments

Operations