API
This API will allow you to create 1SatOrdinals Single and Collection Tokens.
Common
An Api Key must be passed in the header of all requests see Authentication
Create a Token Studio Project for your Standalone - Collection
POST https://platform.taal.com/token-studio/api/v1/project/create
curl --location 'https://platform.taal.com/token-studio/api/v1/project/create' \
--header 'Apikey: ## VALID_API_KEY ##' \
--header 'Content-Type: application/json' \
--data '{
"name": "1satcol project 1718100516565",
"isFungible": false,
"type": "single", //"collection"
"tokenProtocol": "OneSatOrdinal"
}'
{
"success": boolean,
"data": {
"projectUid": <uid>
}
}
Get a list of your Token Studio projects
It will return all projects associated with your API Key.
GET https://platform.taal.com/token-studio/api/v1/project/
curl --location 'https://platform.taal.com/token-studio/api/v1/project/' \
--header 'Apikey: ## VALID_API_KEY ##'
{
"success": boolean,
"data": {
"projectList": [
{
"uid": <uid>,
"name": string,
"network": string,
"offChainData": {
"isFungible": boolean
},
"tokenProtocol": string
}
]
}
}
Get details for a specific project id
Returns a project for a valid project id.
GET https://platform.taal.com/token-studio/api/v1/project/<projectId>
curl --location 'https://platform.taal.com/token-studio/api/v1/project/<projectId>' \
--header "Apikey: ## VALID_API_KEY ##"
{
"success": true,
"data": {
"uid": <uid>,
"name": string,
"tokenProtocol": string,
"network": string,
"isFungible": boolean,
"type": string
}
}
URL Parameters
projectId
A valid project Id
Output creation
Creates an output (single, collection, collectinItem) in the project.
Single projects can only contain single/standalone outputs
Collection projects need first a collection output created and then one or several collectionItems linked to the initial collection output
POST https://platform.taal.com/token-studio/api/v1/token/one-sat-ord/create-output
curl --location 'https://platform.taal.com/token-studio/api/v1/token/one-sat-ord/create-output' \
--header "Apikey: ## VALID_API_KEY ##" \
--header 'Content-Type: application/json' \
--data '{
"projectUid": "<projectId>",
"contentType":"text/html;charset=utf8",
"b64File":"PGh0bWw+PGJvZHk+SGVsbG8gV29ybGQ8L2JvZHk+PC9odG1sPg==",
"metadata": {
"name": "My single token 1718101145907",
"subType": "single",
"subTypeData": "{\"description\": \"this is description\" }",
"type": "ord",
"description": "this is a standalone token description",
"info": "anything",
"eyes": "green"
}
}'
{
"success": true,
"data": {
"uid": <uid>,
"type": string,
"tokenProtocol": string
}
}
Body Parameters
subType
'single' for standalone tokens in single projects
'collection' for the seed token in collection projects
'collectionItem' for each element linked to the collection
projectUid
projectUid
contentType
contentType depending on the desired output type (text, html or image)
b64File
Raw content formatted in b64
metadata
Mandatory:
"name": NFT name
"type": "ord"
"subType": "single" //"collection" or "collectionItem",
"subTypeData": stringified JSON,
"description": string,
Other e.g. traits:
"info": "anything",
"eyes": "green"
Output deletion
Deletes an output (single, collection, collectinItem) in the project.
DELETE https://platform.taal.com/token-studio/api/v1/output/{{outputUid}}
curl --location --request DELETE 'https://platform.taal.com/token-studio/api/v1/output/{{outputUid}}' \
--header "Apikey: ## VALID_API_KEY ##" \
--header 'Content-Type: application/json'
```json
"success": true,
"data": {
"uid": "<uid>",
"createdAt": "<timestamp>",
"type": "token",
"tokenProtocol": "OneSatOrdinal",
"projectUid": "<uid>",
"transactionUid": null,
"txId": null,
"identityUid": "<uid>",
"address": null,
"metadata": { <metadata>
},
"offChainData": {
<fileData>
}
}
}
```
Query Parameters
outputUid
A valid output Id
Output List
Returns all outputs for a valid project id.
GET https://platform.taal.com/token-studio/api/v1/output/by-project/{{projectUid}}?on-chain=0&type=collectionItem
curl --location 'https://platform.taal.com/token-studio/api/v1/' \
--header "Apikey: ## VALID_API_KEY ##"
{
"success": boolean,
"data": {
"outputList": [
{
"createdAt": <date>,
"uid": <uid>,
"projectUid": <uid>,
"transactionUid": <uid> (null if has not been used in a transaction yet),
"type": string,
"tokenProtocol": string,
"metadata": { //Key / value pairs e.g.
"app": string,
"eyes": string,
"info": string,
"name": string,
"type": string,
"subType": string,
"description": string,
"subTypeData": stringified JSON
},
"offChainData": {
"b64FileHash": string,
"b64FileSize": int,
"contentType": string
}
}
]
}
}
Query Parameters
projectUid
A valid project Id
on-chain
Optional. If provided, the accepted values are 0/1 (false / true) to filter by outputs already broadcast
type
Optional. If provided, the accepted values are collection / collectionItem, to filter by a specific type of output
Unsigned Transaction creation
Creates an unsigned transaction ready to sign and then be broadcast.
Unsigned transactions can refer to different outputs as well as different UTXO to be used for funding it
POST https://platform.taal.com/token-studio/api/v1/token/one-sat-ord/create-transaction
curl --location 'https://platform.taal.com/token-studio/api/v1/token/one-sat-ord/create-transaction' \
--header "Apikey: ## VALID_API_KEY ##" \
--header 'Content-Type: application/json' \
--data '{
"projectUid": "<projectUid>",
"publicKey": <Public Key>,
"dstAddress": <Token Recipient Address>,
"outputList": [<outputList>],
"utxoList": [
{
"outputIndex": num,
"txId": "<txId>"
}
]
}'
Response JSON structure
{
"success": boolean,
"data": {
"transactionUid": <uid>,
"txObj": {<txObj>
}
}
}
Body Parameters
<projectUid>
project Id
<publicKey>
publicKey
dstAddress
<Token Recipient Address>
outputList
List of output Ids
txId
Funding txId
outputIndex
Output Index of the tx e.g. 1
Broadcast Transaction
Broadcast a signed transaction and returns its transaction Id
POST https://platform.taal.com/token-studio/api/v1/submit
curl --location 'https://platform.taal.com/token-studio/api/v1/submit' \
--header "Apikey: ## VALID_API_KEY ##" \
--header 'Content-Type: application/json' \
--data '{
"transactionUid": "<transactionUid>",
"tx": "<txObjSigned>"
}
'
Response JSON structure
{
success: boolean,
data: {
txId: string
}
}
Body Parameters
transactionUid
Transaction Uid returned by the create transaction endpoint
txObjSigned
Signed transaction ready to be broadcast
Last updated
Was this helpful?