How to Connect Your Project Data via RWA.io API

Connecting Your Project Data to RWA.io

ALWAYS CHECK THE LATEST UPDATES AT THE BOTTOM OF THIS ARTICLE

Connecting your project data to RWA.io via API allows you to track key metrics, monitor performance, and gain insights into user engagement and financial indicators. Projects can upload custom or predefined time-series data directly to the RWA.io platform, enabling better analytics and visibility.

By following this guide, you’ll learn how to:

  • Set up your project with API access on RWA.io
  • Use available and custom time-series options to monitor project-specific metrics
  • Ensure data formatting and timestamp accuracy for smooth integration
  • Collaborate with team members on data management

Whether you’re tracking unique wallets, transaction volumes, or custom financial indicators, this API integration will help you showcase your project data on RWA.io.

Step 1: Initial Project Setup

  1. Locate Your API Key and Documentation
    • Start by logging into your RWA.io account and navigating to your account dashboard.
    • You can find your API Key and API Documentation under the tabs at your dashboard (these credentials are necessary for authenticating API requests and accessing detailed endpoint specifications for your project).Under an API tab, you will find a detailed view of available time series, project-specific data options, and step-by-step API setup instructions.

Once you have your API Key, you can proceed to configure and upload time-series data directly from your project’s dashboard.

Authentication

RWA.io uses two authentication methods depending on the action being performed.

| Uploading data to a time series | API Key via `x-api-key` header |

| Deleting time series data | API Key via `x-api-key` header |

| Retrieving time series info | API Key via `x-api-key` header |

| Creating a new time series definition | Firebase Auth (Bearer token) |

| Retrieving available uploadable presets | Public — no authentication required |

Request Header Setup:

Add the following header in all requests:

x-api-key: your-api-key

Replace your-api-key with the API key from your dashboard. This authentication step is mandatory for all API calls and protects your project’s data.

Example Code for API Key Integration:

Here’s a sample cURL request to demonstrate how to authenticate with the API using your API key:

curl -X GET "https://api.rwa.io/project-time-series/info?slug=your-project-slug" \

-H "x-api-key: your-api-key" \

-H "Content-Type: application/json"

For creating a new time series, the POST /project-time-series/create and POST /tokenized-asset-time-series/create endpoints require a Firebase Auth Bearer token instead of an API key. See Step 3 for full details.

Step 2: Available Time Series Overview

RWA.io supports two ways to create time series definitions for both project-level and tokenized-asset-level metrics:

  1. Custom series — you define name and units (and type for project series).
  2. Preset-based series — you create from uploadable preset IDs provided by RWA.io.

Before creating preset-based series, fetch the currently supported presets and units:

• GET https://api.rwa.io/project-time-series/uploadable-presets

• GET https://api.rwa.io/tokenized-asset-time-series/uploadable-presets

Both endpoints are public and require no authentication.

Current Uploadable Presets (Project Time Series)

price, volume-24h, market-cap, circulating-supply, total-supply, tvl, aum, unique-wallets, daily-tx, holders, daily-active-addresses

Current Uploadable Presets (Tokenized Asset Time Series)

price, volume-24h, circulating-supply, total-supply, tokenized-value, aum, nav, daily-tx, holders, daily-active-addresses

Use these preset IDs exactly as returned by the uploadable-presets endpoints.

Step 3: Creating a Time Series

Before uploading records, you must create a time series definition (custom or preset-based).

Authentication for Creation

Time series creation endpoints support either Firebase Auth Bearer token or project API key:

Authorization: Bearer your-firebase-token or x-api-key: your-api-key

Option A: Dashboard UI

  1. Open your project in the dashboard and go to API GuideTime Series Management.
  2. Choose Create Time Series.
  3. Select custom or preset flow and save.

Option B: API

Project Time Series

Endpoint: POST https://api.rwa.io/project-time-series/create?projectId=your-project-id

Custom project series payload (type is required):

{
"name": "My Custom Metric",
"type": "mainnet",
"units": "usd",
"chainId": null,
"testnetId": null
}

Preset-based project series payload (can create multiple presets at once):

{
"presets": [
{ "presetId": "price", "chainId": null },
{ "presetId": "market-cap", "chainId": null }
]
}

For project custom series, type must be mainnet or testnet.

Tokenized Asset Time Series

Endpoint: POST https://api.rwa.io/tokenized-asset-time-series/create?assetId=your-asset-id

Custom tokenized-asset series payload:

{
"name": "My Asset Metric",
"units": "usd"
}

Preset-based tokenized-asset series payload:

{
"presets": [
{ "presetId": "tokenized-value", "chainId": null },
{ "presetId": "nav", "chainId": null }
]
}

Get Created Time Series IDs (tsId)

After creation, fetch created series metadata and IDs:

• GET https://api.rwa.io/project-time-series/info?slug=your-project-slug

• GET https://api.rwa.io/tokenized-asset-time-series/info?assetId=your-asset-id

Use the returned id / tsId in data upload endpoints in the next step.

Adding Data to Time Series

Use the POST /project-time-series/data/add endpoint to upload data. Include the slug parameter in the URL to specify the project.

  1. Obtain the Time Series ID from the API Guide.
  2. Format the data with:
    • Timestamp: UNIX milliseconds.
    • Value: Metric value as a string.

Example cURL request:

curl -X POST "https://api.rwa.io/project-time-series/data/add?slug=hutly" \\
-H "x-api-key: your-api-key" \\
-H "Content-Type: application/json" \\
-d '{
"tsId": "6720c86885745176ab11895d",
"records": [
{"timestamp": 1727776800000, "value": "1000000"},
{"timestamp": 1727780400000, "value": "1050000"}
]
}'

Updating and Deleting Data

  • Update Data: Reuse the POST /project-time-series/data/add?slug=your-slug endpoint with updated values.
  • Delete Data: Use the DELETE /project-time-series/data/delete endpoint with timestamps to remove entries. Note that you can only delete full time-series and not partial data.

Example delete request:bash

curl -X DELETE "https://api.rwa.io/project-time-series/data/delete?slug=hutly" \\
-H "x-api-key: your-api-key" \\
-H "Content-Type: application/json" \\
-d '{
"tsId": "6720c86885745176ab11895d",
"timestamps": [1727776800000, 1727780400000]
}'

Step 4: Formatting Data and Timestamps

Correct formatting is required for all data submissions.

Timestamp Guidelines

  1. Format: Timestamps must be in UNIX milliseconds.
    • Example: 1727776800000 (October 1, 2024, 10:00:00 GMT)
  2. Intervals: Timestamps should align with hourly or daily intervals, depending on your time series settings.
    • Hourly: Timestamps should be at the start of each hour (e.g., 10:00:00, 11:00:00).
    • Daily: Timestamps should be at the start of each day (e.g., 00:00:00).
  3. Timezone: All timestamps must be in UTC/GMT to ensure consistency across global data.

Valid Timestamp Examples

Here are examples of correctly formatted timestamps for both hourly and daily intervals:

  • Hourly Interval Example:
    • October 1, 2024, 10:00:00 GMT → 1727776800000
    • October 1, 2024, 11:00:00 GMT → 1727780400000
  • Daily Interval Example:
    • October 1, 2024, 00:00:00 GMT → 1727731200000
    • October 2, 2024, 00:00:00 GMT → 1727817600000

These timestamps, in UNIX milliseconds, provide accurate hourly or daily intervals, as required by the API documentation. Timestamps must fall between January 1, 2014 and the end of today.

Data Format Rules

  1. Interval Consistency: Ensure that all data points for a specific time series are uploaded in the designated interval (either hourly or daily).
  2. Precision: Use precise values for each data point to maintain accuracy, particularly for metrics like volume or price.
  3. Data Type: Make sure values are formatted as numbers (e.g., integers or floating-point values) appropriate to the metric’s unit (e.g., USD, ETH, transactions).

IMPORTANT: Please make sure timestamps are between 1st jan 2014 and end of today.

Example Data Payload

Here’s a sample payload for adding data with correctly formatted timestamps and values:

{
  "tsId": "6720c86885745176ab11895d",
  "records": [
      {"timestamp": 1727776800000, "value": 1000000},   // October 1, 2024, 10:00:00 GMT
      {"timestamp": 1727780400000, "value": 1050000}    // October 1, 2024, 11:00:00 GMT
  ]
}

In this example:

  • timestamp values are in UNIX milliseconds format, aligned to hourly intervals.
  • value represents the metric value (e.g., trading volume, market cap) for each timestamp.

By following these formatting and timestamp guidelines, you ensure that your data integrates smoothly with RWA.io, providing reliable metrics for analysis.

Step 5: Developer Collaboration

RWA.io allows project owners to invite additional developers to collaborate on managing project data via the API. This feature is useful for projects that require a team to maintain, update, and analyze their time-series metrics. Collaborators receive full API access, enabling them to manage time series and project settings as needed.

Inviting Team Members

  1. Access Project Settings:
    • In your RWA.io account dashboard, navigate to the API section.
  2. Invite a Developer:
    • Look for the Invite Developer button.
    • Enter the email address or username of the developer you wish to invite.
    • Select a collaborator role.
    • Ensure that the invitee has an RWA.io account to be able to accept the invitation.
  3. Grant Permissions:
    • Upon accepting the invitation, the developer gains full API access to the project.
    • This includes permissions to add, update, and delete time series data, as well as manage other project settings.

Permissions for Collaborators

Invited developers can:

  1. Access the API Documentation:
    • Collaborators can view and use the API documentation to understand endpoints, request formats, and data guidelines.
  2. Create and Manage Time Series:
    • Developers can create new time series, set parameters, and update or delete data points as required for project analysis.
  3. Manage Project Settings:
    • Collaborators have the capability to adjust project configurations, including time series setup and data access settings.

These permissions allow team members to effectively contribute to the project’s data management and analytics, ensuring that metrics remain up-to-date and aligned with the project’s goals.

Conclusion

Integrating your project data with RWA.io via API provides powerful capabilities for tracking and analyzing key metrics. By following this guide, you can set up, manage, and customize time-series data to improve your project’s visibility and performance in the RWA.io ecosystem.

For full endpoint specifications, visit the API documentation.

CHANGELOG

###

API v1.1.0, April 28, 2026

Four new endpoints have been added to support programmatic time series creation:

• GET /project-time-series/uploadable-presets — returns available preset IDs and units for project time series.

• POST /project-time-series/create — creates a project time series definition (custom or preset-based). Requires Firebase Auth.

• GET /tokenized-asset-time-series/uploadable-presets — returns available preset IDs and units for asset time series.

• POST /tokenized-asset-time-series/create — creates a tokenized asset time series definition (custom or preset-based). Requires Firebase Auth.

Data uploading, deletion, and all other existing endpoints are unchanged.

###

API Response Update March 24, 2026

https://api.rwa.io/project-time-series/info

The endpoint response has been restructured into two top-level fields:

  • infos: contains time series metadata (IDs, permissions, network info)
  • validators: lists data validators

{

"infos": [...],

"validators": [...]

}

Why: clearer separation of data and validation, easier to extend.

https://api.rwa.io/tokenized-asset-time-series/info

The endpoint response has been restructured into two top-level fields:

  • infos: contains time series metadata (IDs, permissions, network info)
  • validators: lists data validators

{

"infos": [...],

"validators": [...]

}

Why: clearer separation of data and validation, easier to extend.

###

NAV / Price Update

NAV and price are now handled as separate time series, which means they can be uploaded independently. Available time series can be retrieved through the info endpoints above. NAV has been added as a new time series type under tokenized asset time series, where data can now be uploaded the same way as for other supported time series.

###

RWA mascot otto ready to help

Need help?

Contact Us