Skip to main content
GET
/
v1-alpha1
/
minting
/
collections
/
{collectionId}
/
base-uri
Get Base URI
curl --request GET \
  --url https://staging.crossmint.com/api/v1-alpha1/minting/collections/{collectionId}/base-uri \
  --header 'X-API-KEY: <api-key>'
import requests

url = "https://staging.crossmint.com/api/v1-alpha1/minting/collections/{collectionId}/base-uri"

headers = {"X-API-KEY": "<api-key>"}

response = requests.get(url, headers=headers)

print(response.text)
const options = {method: 'GET', headers: {'X-API-KEY': '<api-key>'}};

fetch('https://staging.crossmint.com/api/v1-alpha1/minting/collections/{collectionId}/base-uri', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));
<?php

$curl = curl_init();

curl_setopt_array($curl, [
CURLOPT_URL => "https://staging.crossmint.com/api/v1-alpha1/minting/collections/{collectionId}/base-uri",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"X-API-KEY: <api-key>"
],
]);

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}
package main

import (
"fmt"
"net/http"
"io"
)

func main() {

url := "https://staging.crossmint.com/api/v1-alpha1/minting/collections/{collectionId}/base-uri"

req, _ := http.NewRequest("GET", url, nil)

req.Header.Add("X-API-KEY", "<api-key>")

res, _ := http.DefaultClient.Do(req)

defer res.Body.Close()
body, _ := io.ReadAll(res.Body)

fmt.Println(string(body))

}
HttpResponse<String> response = Unirest.get("https://staging.crossmint.com/api/v1-alpha1/minting/collections/{collectionId}/base-uri")
.header("X-API-KEY", "<api-key>")
.asString();
require 'uri'
require 'net/http'

url = URI("https://staging.crossmint.com/api/v1-alpha1/minting/collections/{collectionId}/base-uri")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)
request["X-API-KEY"] = '<api-key>'

response = http.request(request)
puts response.read_body
{
  "uri": "<string>"
}
{
"message": "Setting the base URI is not supported on contracts deployed before 06/09/2023"
}
{
"error": true,
"message": "Malformed API key. / API key provided doesn't have required scopes."
}
{
"error": true,
"message": "Not found"
}
{
"error": true,
"message": "Please try again in a few minutes. If the issue still persists, contact Crossmint support."
}
This is an alpha API and subject to change.

Authorizations

X-API-KEY
string
header
required

Obtained in the Crossmint developer console

Path Parameters

collectionId
string
required

This is the identifier for the collection related to the request. Every project has default collections: default-solana and default-polygon.

The create-collection API will result in collections with UUID formatted collectionId. Example: 9c82ef99-617f-497d-9abb-fd355291681b

The create-collection-idempotent API allows you to specify an arbitrary identifier during the initial request. Example: your-custom-identifier

Response

Base URI of a collection as it appears onchain

uri
string