> ## Documentation Index
> Fetch the complete documentation index at: https://docs.canton.network/llms.txt
> Use this file to discover all available pages before exploring further.

# Splice APIs Overview

> Overview of the REST and gRPC APIs exposed by Splice nodes on the Canton Network

If you are a new Canton Network developer, please check out the [TL;DR for new Canton Network developers](/appdev/get-started/choose-your-path).

## Canton Network Applications

[Canton Network applications](/appdev/get-started/choose-your-path) are used to operate business processes spanning multiple organizations or business entities. Use the following documentation to build Canton Network applications and get them featured on the Canton Network:

* Review the summary of the Canton Network tokenomics at `app_tokenomics`.
* Learn to build Canton Network applications from the tutorials, how-tos, explanations, and reference documentation at [/appdev/get-started/choose-your-path](/appdev/get-started/choose-your-path)
* Browse the currently featured apps: [https://sync.global/featured-apps/](https://sync.global/featured-apps/)
* Request your app to be featured: [https://sync.global/featured-app-request/](https://sync.global/featured-app-request/)
  * These requests are published on the [Tokenomics mailing list](https://lists.sync.global/g/tokenomics/topics). Browse that list for inspiration and to see what other apps are being built.
* Join the app development discussion in the [#gsf-global-synchronizer-appdev](https://app.slack.com/client/T03T53E10/C08FQRCRFUN) Slack channel by sending a request to [operations@sync.global](mailto:operations@sync.global) for your Slack organization to be added to the channel.

## RPC APIs Overview

When building an application for the Canton Network, you will typically integrate with some of the HTTP or gRPC APIs provided by the Global Synchronizer and Validator Nodes. Use the guidance below to learn which ones to use and how to use them.

* Use the `app_dev_ledger_api` to access the view of the ledger as seen by the parties hosted on a Validator Node and submit transaction to the ledger.
* Use the [app\_dev\_scan\_api](/sdks-tools/api-reference/splice-scan-api) to access the view of the ledger and its infrastructure as seen by all SV Nodes. Note that this view is the one visible to the DSO party and does not include any of the data that is private to the parties hosted on Validator Nodes. Use the `app_dev_ledger_api` to access the data of parties hosted on the Validator Node.
* Use the [app\_dev\_validator\_api](/sdks-tools/api-reference/splice-validator-api) to access higher-level functionality provided by the Splice Validator App running alongside the Canton Participant node in a Validator Node.

See the diagram below to learn about which components serve which APIs and how they are connected to each other.

<img src="https://mintcdn.com/cantonfoundation/Ps1aWN9aLFijpT3F/images/splice/app-connectivity-diagram.png?fit=max&auto=format&n=Ps1aWN9aLFijpT3F&q=85&s=2b9a6b8a917c9ca0ee09786f749a1376" width="800" alt="App Network Diagram" data-path="images/splice/app-connectivity-diagram.png" />

## Splice Daml APIs Overview

Splice implements several decentralized applications whose on-ledger state and workflows are implemented in Daml. An [Interface](/appdev/reference/daml-language-reference#reference-interfaces) defined in Daml code is a public API that you should develop against because they are stable. These public APIs are used in interoperability standards, like the [Canton Network Token Standard](/sdks-tools/api-reference/splice-daml-apis). Use these Daml APIs to minimize the coupling between your application's Daml code and the Daml code of your dependencies. For example, the `Interfaces` in the Splice implementation loosely couple an application with the implementation so that a Splice upgrade avoids forcing a corresponding upgrade of an application's Daml code.

See the [app\_dev\_daml\_api](/sdks-tools/api-reference/splice-daml-apis) for an overview of the Daml APIs defined in Splice and their purpose.

## Splice Daml Models Overview

A Daml model's [Templates](/appdev/reference/daml-language-reference#reference-templates) and [Choices](/appdev/reference/daml-language-reference#choices) are considered internal implementation details. For example, the Canton Network Token Standard is the public API for working with tokens, including Canton Coin. The Canton Network Token Standard implementation operates on top of the AmuletRules\_Transfer choice (this provides backwards compatibility). It is worthwhile and recommended to study these implementation details because you can learn a lot by examination.

Use the following resources to learn how to interact with the Daml models state and workflows.

* Learn how to read and write Daml code from: [/appdev/get-started/choose-your-path](/appdev/get-started/choose-your-path)
* Learn about the Daml packages that are part of Splice and their data models and workflows from [app\_dev\_daml\_models](/sdks-tools/api-reference/splice-daml-models).
