Migration Guide

Migration Guide: v2.0 to v2.1

This guide covers the changes required to migrate from data access version 2.0 to version 2.1.

Overview

v2.1 simplifies the API by consolidating portfolio_id and sku into a single credential_id. Your credential is pre-configured with the appropriate SKU and bureau settings, reducing the number of parameters needed in requests.

Key Change

Replace portfolio_id + sku with a single credential_id in all requests.


What's Changing

1. Order Requests

Endpoint: POST /v2/data-access/orders (unchanged)

Before (v2.0):

{
  "data": {
    "type": "orders",
    "attributes": {
      "consumer_id": "8932c731-8a5b-40d6-92d5-f338d8e4e5be",
      "portfolio_id": "19b0174f-d831-4bca-a13c-9acf75497a9b",
      "sku": "equifax-bronze-hard"
    }
  }
}

After (v2.1):

{
  "data": {
    "type": "orders",
    "attributes": {
      "consumer_id": "8932c731-8a5b-40d6-92d5-f338d8e4e5be",
      "credential_id": "19b0174f-d831-4bca-a13c-9acf75497a9b"
    }
  }
}
Removed Replaced With
portfolio_id credential_id
sku (embedded in credential)

2. Header Route Update

To use V2.1 instead of V2.0, include the X-Bas-Router header in your requests.

Header Value Description
X-Bas-Router true Routes the request to v2.1 instead of v2.0

Example Request with X-Bas-Router Header

 curl --location --request POST 'https://sandbox.bloom.dev/v2/data-access/orders/' \
 --header 'Authorization: Bearer <ACCESS_TOKEN>' \
 --header 'X-Bas-Router: true' \
 --header 'Content-Type: application/json' \
 --data-raw '{
     "data": {
         "type": "orders",
         "attributes": {
             "consumer_id": "<CONSUMER_ID>",
             "credential_id": "<CREDENTIAL_ID>"
         }
     }
 }'

⚠️
Important
Without the X-Bas-Router: true header, requests will continue routing to v2.0.


3. Order Responses

Endpoint: GET /v2/data-access/orders/{orderId} (unchanged)

Before (v2.0):

{
  "data": {
    "type": "orders",
    "id": "a7b14fc8-d2c2-4297-8e30-96a9947e31db",
    "attributes": {
      "consumer_id": "8932c731-8a5b-40d6-92d5-f338d8e4e5be",
      "portfolio_id": "0da2c731-8a5b-40d6-92d5-f338d8e4e5be",
      "sku": "equifax-bronze-hard",
      "order_placed": "2022-12-19T18:07:10.900Z",
      "status": "SUCCESS",
      "status_code": "30"
    }
  }
}

After (v2.1):

{
  "data": {
    "type": "orders",
    "id": "a7b14fc8-d2c2-4297-8e30-96a9947e31db",
    "attributes": {
      "consumer_id": "8932c731-8a5b-40d6-92d5-f338d8e4e5be",
      "credential_id": "0da2c731-8a5b-40d6-92d5-f338d8e4e5be",
      "order_placed": "2022-12-19T18:07:10.900Z",
      "status": "SUCCESS",
      "status_code": "30"
    }
  }
}

4. Query Parameters

Endpoint: GET /v2/data-access/orders (unchanged)

When listing or filtering orders:

Before After
portfolioId credential_id

Example:

GET /v2/data-access/orders?credential_id=19b0174f-d831-4bca-a13c-9acf75497a9b&status=SUCCESS

5. Subscriptions (Batch Ordering)

Endpoint: POST /v2/data-access/subscriptions (unchanged)

Before (v2.0):

{
  "data": {
    "type": "subscriptions",
    "attributes": {
      "organization_id": "539008ae-e1ff-42ed-8a58-e3588befea9d",
      "sku": "equifax-bronze-batch-account-review",
      "output_credentials": "s3://bucket/path",
      "frequency": "WEEKLY"
    }
  }
}

After (v2.1):

{
  "data": {
    "type": "subscriptions",
    "attributes": {
      "credential_id": "19b0174f-d831-4bca-a13c-9acf75497a9b",
      "output_credentials": "s3://bucket/path",
      "frequency": "WEEKLY"
    }
  }
}
Removed Replaced With
organization_id (derived from credential)
sku (embedded in credential)

Note

Subscription responses also change from organization_id to credential_id. Also, sku is not included in the response back.


What's NOT Changing

No changes required


Migration Checklist

Before going live


Getting Your Credential ID

Your credential_id will be provided by Bloom during onboarding or migration. Each credential is tied to:

Multiple SKUs

If you have multiple SKUs, you will receive multiple credential IDs. Use the appropriate credential ID for each product type.


Support

For questions or assistance with migration, contact your Bloom representative.