<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/">
    <channel>
        <title>0xCord</title>
        <link>https://paragraph.com/@0xcord</link>
        <description>The easiest way to access web3 infrastructure via native payments, composability, and configuration.</description>
        <lastBuildDate>Tue, 23 Jun 2026 18:11:13 GMT</lastBuildDate>
        <docs>https://validator.w3.org/feed/docs/rss2.html</docs>
        <generator>https://github.com/jpmonette/feed</generator>
        <language>en</language>
        <image>
            <title>0xCord</title>
            <url>https://storage.googleapis.com/papyrus_images/0bad975ab5419fad2f1e6b0392a31e956a57290f72edee97c34a0fffad69199a.png</url>
            <link>https://paragraph.com/@0xcord</link>
        </image>
        <copyright>All rights reserved</copyright>
        <item>
            <title><![CDATA[How to use 0xCord’s Chainlink VRF API in your Unity game]]></title>
            <link>https://paragraph.com/@0xcord/how-to-use-0xcord-s-chainlink-vrf-api-in-your-unity-game</link>
            <guid>6v5aDvSgjPHltxsZDX69</guid>
            <pubDate>Thu, 06 Apr 2023 18:36:40 GMT</pubDate>
            <description><![CDATA[0xCord provides a RESTful API on top of Chainlink VRF v2, making it easy for developers to generate verifiably random numbers for their applications. If you&apos;re building a game in Unity and need a random number generator, integrating 0xCord&apos;s API can be a great solution. In this blog post, we&apos;ll go through the steps you need to take to integrate 0xCord&apos;s API into your Unity game. Follow along on Github here: https://github.com/Made-For-Gamers/game-jam-webgl-template (1) Get...]]></description>
            <content:encoded><![CDATA[<p>0xCord provides a RESTful API on top of Chainlink VRF v2, making it easy for developers to generate verifiably random numbers for their applications. If you&apos;re building a game in Unity and need a random number generator, integrating 0xCord&apos;s API can be a great solution. In this blog post, we&apos;ll go through the steps you need to take to integrate 0xCord&apos;s API into your Unity game.</p><p>Follow along on Github here: <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://github.com/Made-For-Gamers/game-jam-webgl-template">https://github.com/Made-For-Gamers/game-jam-webgl-template</a></p><p>(1) Get an API key and URL</p><p>To use 0xCord&apos;s API for Chainlink VRF v2, you&apos;ll need an 0xCord API key. You can get these by signing up on the 0xCord website. Once you have your API key and URL, you can use them to send requests to the API.</p><p>a. Sign up for an account on 0xCord</p><p>To use the 0xCord VRF API, you need to sign up for an account on their website. Go      to <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://0xcord.com/"><strong>https://0xcord.com</strong></a> and follow the sign-up process.</p><p>b. Create a new Dapp</p><p>Once you&apos;ve signed up, create a new Dapp by following these steps:</p><p>- Click on &quot;Create Dapp&quot; on the 0xCord dashboard.</p><p>- Enter a name for your Dapp and click on &quot;Create&quot;.</p><p>c. Provision Chainlink for your Dapp</p><p>After you&apos;ve created your Dapp, you need to provision Chainlink for it by following      these steps:</p><p>- Click on “Add new service”.</p><p>- Select “Chainlink VRF V2” from the Infra hub and select the dapp name from the           dropdown.</p><p>Once you&apos;ve provisioned Chainlink for your Dapp, you can get your API key.</p><p>d. Get your API key</p><p>To get your API key, you can use the &quot;Fetch Config Vars&quot; button on the dapp      page.</p><p>- Copy the &quot;API KEY&quot; value.</p><p>Your API key is now available to use with the 0xCord VRF API.</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/9957a198f004af7bf27941e129e8bca02cba04e3c3e5023af65e45e7dc07192e.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><p>(2) Create a script in Unity</p><p>Next, create a script in Unity that will send requests to the 0xcord VRF API. The example code we provided above shows how to do this. You can use the UnityWebRequest class to send HTTP requests to the API.</p><p>(3) Call the API</p><p>To generate a random number using the 0xcord VRF API, you&apos;ll need to call the API with your API key and URL. In the example code, the URL is set to &quot;<a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://staging.0xcord.com/api/vrfv2/requestRandomNumber?network=fuji&amp;numWords=1"><strong>https://0xcord.com/api/vrfv2/requestRandomNumber?network=fuji&amp;numWords=1</strong></a>&quot;, which requests a single random number from the &quot;fuji&quot; network.</p><p>The authToken variable in the code is used to set the API key. You should replace this value with your own API key.</p><pre data-type="codeBlock" text="[SerializeField] private TextMeshProUGUI txtHeading; //text field to display result
[SerializeField] private Button BtnCallApi; //Button that acitons the call
[SerializeField] private string apiKey; // Add your key in the inspector

//Button calls this method
public void CallVRF()
    {
        StartCoroutine(RequestRandomNumber());
    }

    private IEnumerator RequestRandomNumber()
    {
        BtnCallApi.enabled = false;
        txtHeading.text = &quot;Requesting random number from VRF.  Please wait...&quot;;

        string url = &quot;https://0xcord.com/api/vrfv2/requestRandomNumber?network=fuji&amp;numWords=1&quot;;
        string authToken = apiKey;

        UnityWebRequest request = UnityWebRequest.Post(url, &quot;&quot;);

        request.SetRequestHeader(&quot;Authorization&quot;, authToken);
        yield return request.SendWebRequest();

        // ....
}
"><code>[SerializeField] <span class="hljs-keyword">private</span> TextMeshProUGUI txtHeading; <span class="hljs-comment">//text field to display result</span>
[SerializeField] <span class="hljs-keyword">private</span> Button BtnCallApi; <span class="hljs-comment">//Button that acitons the call</span>
[SerializeField] <span class="hljs-keyword">private</span> <span class="hljs-keyword">string</span> apiKey; <span class="hljs-comment">// Add your key in the inspector</span>

<span class="hljs-comment">//Button calls this method</span>
<span class="hljs-keyword">public</span> void CallVRF()
    {
        StartCoroutine(RequestRandomNumber());
    }

    <span class="hljs-keyword">private</span> IEnumerator RequestRandomNumber()
    {
        BtnCallApi.enabled <span class="hljs-operator">=</span> <span class="hljs-literal">false</span>;
        txtHeading.text <span class="hljs-operator">=</span> <span class="hljs-string">"Requesting random number from VRF.  Please wait..."</span>;

        <span class="hljs-keyword">string</span> url <span class="hljs-operator">=</span> <span class="hljs-string">"https://0xcord.com/api/vrfv2/requestRandomNumber?network=fuji&#x26;numWords=1"</span>;
        <span class="hljs-keyword">string</span> authToken <span class="hljs-operator">=</span> apiKey;

        UnityWebRequest request <span class="hljs-operator">=</span> UnityWebRequest.Post(url, <span class="hljs-string">""</span>);

        request.SetRequestHeader(<span class="hljs-string">"Authorization"</span>, authToken);
        yield <span class="hljs-keyword">return</span> request.SendWebRequest();

        <span class="hljs-comment">// ....</span>
}
</code></pre><p>An example can be found here: <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://github.com/Made-For-Gamers/game-jam-webgl-template/blob/f0ad0f224d8bd0f48868aab0f0d77b3f22a43b5b/Assets/Scripts/0xcord/Chainlink_API.cs">https://github.com/Made-For-Gamers/game-jam-webgl-template/blob/f0ad0f224d8bd0f48868aab0f0d77b3f22a43b5b/Assets/Scripts/0xcord/Chainlink_API.cs</a></p><p>(4) Parse the response</p><p>Once you&apos;ve sent the request to the API, you&apos;ll need to parse the response. In the example code, the response is returned as a JSON string. You can use the JsonUtility class to parse the JSON into a C# object.</p><p>Create another script class for the returned JSON structure:</p><pre data-type="codeBlock" text="using System;

[Serializable]
public class RandomNumberResponse 
{   
     public Data data;

    [Serializable]
    public class Data
    {
        public bool success;
        public string requestId;
        public string transactionHash;
        public string url;
        public string[] randomNumber;
    }
}
"><code><span class="hljs-keyword">using</span> System;

[<span class="hljs-meta">Serializable</span>]
<span class="hljs-keyword">public</span> <span class="hljs-keyword">class</span> <span class="hljs-title">RandomNumberResponse</span> 
{   
     <span class="hljs-keyword">public</span> Data data;

    [<span class="hljs-meta">Serializable</span>]
    <span class="hljs-keyword">public</span> <span class="hljs-keyword">class</span> <span class="hljs-title">Data</span>
    {
        <span class="hljs-keyword">public</span> <span class="hljs-built_in">bool</span> success;
        <span class="hljs-keyword">public</span> <span class="hljs-built_in">string</span> requestId;
        <span class="hljs-keyword">public</span> <span class="hljs-built_in">string</span> transactionHash;
        <span class="hljs-keyword">public</span> <span class="hljs-built_in">string</span> url;
        <span class="hljs-keyword">public</span> <span class="hljs-built_in">string</span>[] randomNumber;
    }
}
</code></pre><p>An example can be found here: <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://github.com/Made-For-Gamers/game-jam-webgl-template/blob/f0ad0f224d8bd0f48868aab0f0d77b3f22a43b5b/Assets/Scripts/0xcord/Return%20Data/RandomNumberResponse.cs">https://github.com/Made-For-Gamers/game-jam-webgl-template/blob/f0ad0f224d8bd0f48868aab0f0d77b3f22a43b5b/Assets/Scripts/0xcord/Return Data/RandomNumberResponse.cs</a></p><p>Add the following inside the RequestRandomNumber method:</p><pre data-type="codeBlock" text="//...

if (request.result == UnityWebRequest.Result.Success)
        {
            string json = request.downloadHandler.text;
            RandomNumberResponse response = JsonConvert.DeserializeObject&lt;RandomNumberResponse&gt;(json);

            if (response != null &amp;&amp; response != null &amp;&amp; response.data.randomNumber != null &amp;&amp; response.data.randomNumber.Length &gt; 0)
            {
                string randomNumber = response.data.randomNumber[0];
                txtHeading.text = &quot;Random number: &quot; + randomNumber;

                Debug.Log(&quot;requestId: &quot; + response.data.requestId);
                Debug.Log(&quot;transactionHash: &quot; + response.data.transactionHash);
                Debug.Log(&quot;url: &quot; + response.data.url);
                Debug.Log(&quot;randomNumber: &quot; + randomNumber);
            }
            else
            {
                Debug.Log(&quot;Failed to parse response&quot;);
            }
        }
        else
        {
            Debug.Log(&quot;Error: &quot; + request.error);
        }
        BtnCallApi.enabled = true;
"><code><span class="hljs-comment">//...</span>

<span class="hljs-keyword">if</span> (request.result <span class="hljs-operator">=</span><span class="hljs-operator">=</span> UnityWebRequest.Result.Success)
        {
            <span class="hljs-keyword">string</span> json <span class="hljs-operator">=</span> request.downloadHandler.text;
            RandomNumberResponse response <span class="hljs-operator">=</span> JsonConvert.DeserializeObject&#x3C;RandomNumberResponse<span class="hljs-operator">></span>(json);

            <span class="hljs-keyword">if</span> (response <span class="hljs-operator">!</span><span class="hljs-operator">=</span> null <span class="hljs-operator">&#x26;</span><span class="hljs-operator">&#x26;</span> response <span class="hljs-operator">!</span><span class="hljs-operator">=</span> null <span class="hljs-operator">&#x26;</span><span class="hljs-operator">&#x26;</span> response.data.randomNumber <span class="hljs-operator">!</span><span class="hljs-operator">=</span> null <span class="hljs-operator">&#x26;</span><span class="hljs-operator">&#x26;</span> response.data.randomNumber.Length <span class="hljs-operator">></span> <span class="hljs-number">0</span>)
            {
                <span class="hljs-keyword">string</span> randomNumber <span class="hljs-operator">=</span> response.data.randomNumber[<span class="hljs-number">0</span>];
                txtHeading.text <span class="hljs-operator">=</span> <span class="hljs-string">"Random number: "</span> <span class="hljs-operator">+</span> randomNumber;

                Debug.Log(<span class="hljs-string">"requestId: "</span> <span class="hljs-operator">+</span> response.data.requestId);
                Debug.Log(<span class="hljs-string">"transactionHash: "</span> <span class="hljs-operator">+</span> response.data.transactionHash);
                Debug.Log(<span class="hljs-string">"url: "</span> <span class="hljs-operator">+</span> response.data.url);
                Debug.Log(<span class="hljs-string">"randomNumber: "</span> <span class="hljs-operator">+</span> randomNumber);
            }
            <span class="hljs-keyword">else</span>
            {
                Debug.Log(<span class="hljs-string">"Failed to parse response"</span>);
            }
        }
        <span class="hljs-keyword">else</span>
        {
            Debug.Log(<span class="hljs-string">"Error: "</span> <span class="hljs-operator">+</span> request.error);
        }
        BtnCallApi.enabled <span class="hljs-operator">=</span> <span class="hljs-literal">true</span>;
</code></pre><p>(5) Use the random number in your game</p><p>Finally, you can use the random number generated by the 0xCord VRF API in your game. In the example code, the random number is displayed in the Unity UI, using the ChangeText method. You can use the random number in any way you need to in your game. You can also use the transaction hash and URL, and show this information to your players.</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/0eba044becbf533d8df198b370e44356698376fbe63da46c11dc10d866424cbc.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><p>In conclusion, integrating 0xCord&apos;s VRF API into your Unity game is a straightforward process. By following the steps outlined above, you can easily generate verifiably random numbers for your game. The 0xCord API is built on top of the Chainlink VRF infrastructure, which ensures the randomness of the generated numbers, making it a reliable solution for various use cases, including gaming, gambling, and security applications.</p><p>Thanks!</p>]]></content:encoded>
            <author>0xcord@newsletter.paragraph.com (0xCord)</author>
        </item>
        <item>
            <title><![CDATA[0xCord and Chainlink Labs Establish Channel Partnership To Drive Web3 Infrastructure Adoption]]></title>
            <link>https://paragraph.com/@0xcord/0xcord-and-chainlink-labs-establish-channel-partnership-to-drive-web3-infrastructure-adoption</link>
            <guid>gi2cCjgelflz3WRXo5Px</guid>
            <pubDate>Tue, 28 Feb 2023 20:14:45 GMT</pubDate>
            <description><![CDATA[We’re excited to announce that 0xCord—the easiest way to access Web3 infrastructure via native payments, composability, and configuration—has formed a channel partnership with Chainlink Labs, a developer of the Chainlink Network. This partnership unlocks a simpler way for developers to leverage Web3 infrastructure and build exciting new solutions. How 0xCord Enables Users To Easily Access Chainlink VRF 0xCord provides developers with an integration solution that enables them to seamlessly acc...]]></description>
            <content:encoded><![CDATA[<p><em>We’re excited to announce that </em><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://0xcord.com/"><em>0xCord</em></a><em>—the easiest way to access Web3 infrastructure via native payments, composability, and configuration—has formed a channel partnership with Chainlink Labs, a developer of the Chainlink Network. This partnership unlocks a simpler way for developers to leverage Web3 infrastructure and build exciting new solutions.</em></p><p><strong>How 0xCord Enables Users To Easily Access Chainlink VRF</strong> 0xCord provides developers with an integration solution that enables them to seamlessly access hyper-reliable, secure, and decentralized Web3 services such as Chainlink VRF. With 0xCord, now web3 developers, enterprises, and Web2-native applications can build on Web3 technology without the headaches of acquiring and custody cryptocurrency or developing custom integrations. Instead, they can access Web3 services, like Chainlink VRF, through the 0xCord API and pay for them via credit card. Already, the Web3 ecosystem has seen a wide array of innovative NFT projects from enterprises, such as the NBA using Chainlink VRF to power its NFT collection. This partnership will help expand the VRF user base, make it easier to integrate, and position developers to discover new VRF use cases.</p><p><strong>Partnership Details</strong> 0xCord will support the Chainlink ecosystem, helping to drive Web3 infrastructure adoption by enterprises. To be more specific, 0xCord will support Chainlink Labs by assisting enterprises in integrating key Chainlink services, such as Chainlink VRF. By working with industry leaders like Chainlink Labs, 0xCord will continue to develop its Web3 integrations platform and become an important link between enterprises and the Web3 ecosystem.</p><p><strong>About Chainlink Labs</strong> Chainlink Labs is the leading provider of secure and reliable open-source blockchain oracle solutions, enhancing smart contracts by connecting them to a wide range of off-chain data sources and computations, such as asset prices, web APIs, IoT devices, payment systems, and more. Chainlink Labs is dedicated to the development and integration of Chainlink as the standard decentralized oracle framework used by smart contracts across any blockchain.</p><p><strong>About Chainlink</strong> Chainlink is the industry-standard Web3 services platform that has enabled trillions of dollars in transaction volume across DeFi, insurance, gaming, NFTs, and other major industries. As the leading decentralized oracle network, Chainlink enables developers to build feature-rich Web3 applications with seamless access to real-world data and off-chain computation across any blockchain and provides global enterprises with a universal gateway to all blockchains.</p><p>The Chainlink ecosystem features over 1,500 projects that use decentralized oracle networks to seamlessly access services such as decentralized data feeds, a verifiably random number generator, a proven smart contract automation solution, and reliable asset reserve verification. In addition, Chainlink can bridge the gap for Web2 companies trying to enter the Web3 space by offering projects and data providers a universal gateway to all blockchains.</p><p><strong>About 0xCord</strong> 0xCord, an infrastructure hub for web3.</p><p>To build a web3 application, it is really difficult to ACCESS web3 infrastructure.</p><p>Currently, web3 infrastructure is paid for in unique cryptocurrencies, fragmented, and VERY complex to set up.</p><p>Developers 🤝 Infrastructure</p><p>For web3 developers: 0xCord is the easiest way to ACCESS web3 infrastructure via native payments, composability, and configuration, all in one unified place.</p><p>For web3 infrastructure: 0xCord is a “Front-End as a Service”.</p><ul><li><p>Reduces churn.</p></li><li><p>Expands TAM.</p></li><li><p>Provides a new distribution channel in the 0xCord hub.</p></li><li><p>Increases revenue.</p></li></ul><p>With the accelerating boom of web3 developers and infrastructure, building a blockchain application is increasingly becoming more difficult, unless the issue of infrastructure ACCESS is solved.</p><p>Learn more at <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://0xcord.com/">0xCord.com</a></p>]]></content:encoded>
            <author>0xcord@newsletter.paragraph.com (0xCord)</author>
            <enclosure url="https://storage.googleapis.com/papyrus_images/ed20cdb4a7aea9d868ba48d258a63d2e5521eac8dfe782319ada5fbd29d96bb2.png" length="0" type="image/png"/>
        </item>
        <item>
            <title><![CDATA[0xCord - Hello World]]></title>
            <link>https://paragraph.com/@0xcord/0xcord-hello-world</link>
            <guid>Kalkg18nfKXreGlHYpDL</guid>
            <pubDate>Tue, 28 Feb 2023 20:08:54 GMT</pubDate>
            <description><![CDATA[0xCord is the easiest way to access web3 infrastructure via native payments, composability, and configuration, all in one unified place. In this tutorial, we&apos;ll show you how to use 0xCord&apos;s Chainlink VRF V2 API for generating random numbers. Whether you prefer on-chain or off-chain consumption, we&apos;ve got you covered. Let&apos;s get started!To get started, head over to 0xCord.com and sign up to create your account. Once you&apos;ve submitted your info, we&apos;ll send you a magi...]]></description>
            <content:encoded><![CDATA[<p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://0xcord.com/">0xCord</a> is the easiest way to access web3 infrastructure via native payments, composability, and configuration, all in one unified place. In this tutorial, we&apos;ll show you how to use 0xCord&apos;s <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://chain.link">Chainlink</a> VRF V2 API for generating random numbers. Whether you prefer on-chain or off-chain consumption, we&apos;ve got you covered. Let&apos;s get started!</p><ol><li><p>To get started, head over to <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://0xcord.com">0xCord.com</a> and sign up to create your account. Once you&apos;ve submitted your info, we&apos;ll send you a magic link via email. Just click on it and voila - you&apos;ll be taken straight to your dashboard!</p></li><li><p>Once you&apos;re logged in, you&apos;ll see your dashboard which displays all of your dapps, including NFTs, DeFi products, and DAOs - basically anything that requires Web3 infrastructure. To get started, you&apos;ll want to create a new dapp. Just hit the &quot;Create new&quot; button and give it a name.</p></li><li><p>Now that you&apos;ve created your dapp, let&apos;s take a look at its page by clicking &quot;view details&quot;. As you&apos;ll see, there isn&apos;t any Web3 infrastructure set up yet. That&apos;s where the Infra Hub comes in - this is where you can provision the resources you need. Our first piece of infra is Chainlink VRF V2. Simply select your dapp from the dropdown, and we&apos;ll automatically provision Chainlink VRF V2 for you. Best of all, it supports both on-chain and off-chain consumption for all blockchains that Chainlink supports. As of 2/28, we have several testnets available for you to use for free, including Polygon Mumbai, Sepolia, Fuji, BSC testnet, Klaytn testnet, Fantom testnet, and Goerli.</p></li></ol><h3 id="h-onchain-api" class="text-2xl font-header !mt-6 !mb-4 first:!mt-0 first:!mb-0">Onchain API</h3><p>Usually, using Chainlink VRF V2 onchain requires several steps, such as acquiring gas tokens, $LINK tokens, creating subscriptions, and managing subscription balances. But with 0xCord, we simplify the process by provisioning and managing the subscriptions for you - no crypto required! Here&apos;s how to use Chainlink VRF V2 onchain with 0xCord:</p><ol><li><p>Click &quot;Fetch Config Vars&quot; to view the fully-funded subscriptions that are ready to use.</p></li><li><p>Copy the subscription ID for the chain you&apos;ll deploy your contract to. For example, on Polygon Mumbai this might be 2894.</p><ol><li><p>If you’re following the <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://docs.chain.link/vrf/v2/subscription/examples/get-a-random-number#create-and-deploy-a-vrf-v2-compatible-contract">Chainlink VRF tutorial</a> , use our subscription ID in this step:</p></li><li><p>Configure your deployment. On the <strong>Deploy</strong> tab in Remix, select the <strong>Injected Provider</strong> environment, select the <code>VRFv2Consumer</code> contract from the contract list, and specify your <code>subscriptionId</code> so the constructor can set it.</p></li></ol></li><li><p>Once your contract is deployed, copy its address. The next step is to link the consumer to the subscription, which you can do in one of two ways:</p><ol><li><p>Using the 0xCord app, click the gears icon on the Chainlink instance to open the ChainLink Subscription Consumers modal. Enter the contract address, select the chain from the dropdown, and click save. This will create a transaction linking the consumer to the chain.</p></li><li><p>Alternatively, you can programmatically link the consumer to the subscription and use our <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://www.postman.com/oxcord/workspace/public-0xcord-api/request/18657619-e5369539-f1ad-4fc9-b6a7-96a784d6f7b1">API’s Add Consumer endpoint</a>. First go to the dapp page on 0xCord, and copy the dappId from the URL params. Then, authenticate using the API key, and pass in the network, consumer, and dappId as query params.</p><ol><li><p>Example request:</p><pre data-type="codeBlock" text="curl --location --request POST &apos;https://0xcord.com/api/vrfv2/addConsumer?dappId=1&amp;network=polygon_mumbai&amp;consumer=0x53470b76D3f57E6C7be40BB333014481ec1c5530&apos; \
--header &apos;Authorization: xxxx&apos; 
"><code>curl <span class="hljs-operator">-</span><span class="hljs-operator">-</span>location <span class="hljs-operator">-</span><span class="hljs-operator">-</span>request POST <span class="hljs-string">'https://0xcord.com/api/vrfv2/addConsumer?dappId=1&#x26;network=polygon_mumbai&#x26;consumer=0x53470b76D3f57E6C7be40BB333014481ec1c5530'</span> \
<span class="hljs-operator">-</span><span class="hljs-operator">-</span>header <span class="hljs-string">'Authorization: xxxx'</span> 
</code></pre></li></ol></li></ol></li></ol><p>And that&apos;s it! With 0xCord, you can now easily use Chainlink VRF in your contract without worrying about managing subscriptions.</p><h3 id="h-offchain-api" class="text-2xl font-header !mt-6 !mb-4 first:!mt-0 first:!mb-0">Offchain API</h3><p>With 0xCord&apos;s offchain API, you can easily consume VRF V2 through a simple RESTful JSON API call, bridging the gap between web2 and decentralized web3 infrastructure. Here&apos;s how to use it:</p><ol><li><p>Copy the API key from the &quot;Fetch Config Vars&quot; section, which is used to access the 0xCord RESTful JSON API. <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://www.postman.com/oxcord/workspace/public-0xcord-api/request/18657619-e5369539-f1ad-4fc9-b6a7-96a784d6f7b1">Docs can be found here</a>.</p></li><li><p>In Postman, select the production environment and paste the API key into the &quot;apiKey&quot; variable.</p></li><li><p>Hit the &quot;Request Random Number&quot; API call, selecting the desired network (<code>polygon_mumbai</code>, <code>sepolia</code>, <code>fuji</code>, <code>bsc_testnet</code>, <code>klaytn_testnet</code>, <code>fantom_testnet</code>, <code>goerli</code>) and specifying the number of random numbers with the &quot;numWords&quot; parameter (1 to 500).</p><ol><li><p>Example request:</p><pre data-type="codeBlock" text="curl --location --request POST &apos;https://0xcord.com/api/vrfv2/requestRandomNumber/?network=polygon_mumbai&amp;numWords=1&apos; \
--header &apos;Authorization: xxx&apos;
"><code>curl <span class="hljs-operator">-</span><span class="hljs-operator">-</span>location <span class="hljs-operator">-</span><span class="hljs-operator">-</span>request POST <span class="hljs-string">'https://0xcord.com/api/vrfv2/requestRandomNumber/?network=polygon_mumbai&#x26;numWords=1'</span> \
<span class="hljs-operator">-</span><span class="hljs-operator">-</span>header <span class="hljs-string">'Authorization: xxx'</span>
</code></pre></li><li><p>Example response:</p><pre data-type="codeBlock" text="{
    &quot;data&quot;: {
        &quot;success&quot;: true,
        &quot;requestId&quot;: &quot;82772297461836742329238512432706064630856291450561249462036537828944094389038&quot;,
        &quot;transactionHash&quot;: &quot;0x1f636827ba3572472e117f8f008b3fc6726c1284c0ceca586e3a0e676f0406eb&quot;,
        &quot;url&quot;: &quot;https://mumbai.polygonscan.com/tx/0x1f636827ba3572472e117f8f008b3fc6726c1284c0ceca586e3a0e676f0406eb&quot;
    }
}
"><code><span class="hljs-punctuation">{</span>
    <span class="hljs-attr">"data"</span><span class="hljs-punctuation">:</span> <span class="hljs-punctuation">{</span>
        <span class="hljs-attr">"success"</span><span class="hljs-punctuation">:</span> <span class="hljs-literal"><span class="hljs-keyword">true</span></span><span class="hljs-punctuation">,</span>
        <span class="hljs-attr">"requestId"</span><span class="hljs-punctuation">:</span> <span class="hljs-string">"82772297461836742329238512432706064630856291450561249462036537828944094389038"</span><span class="hljs-punctuation">,</span>
        <span class="hljs-attr">"transactionHash"</span><span class="hljs-punctuation">:</span> <span class="hljs-string">"0x1f636827ba3572472e117f8f008b3fc6726c1284c0ceca586e3a0e676f0406eb"</span><span class="hljs-punctuation">,</span>
        <span class="hljs-attr">"url"</span><span class="hljs-punctuation">:</span> <span class="hljs-string">"https://mumbai.polygonscan.com/tx/0x1f636827ba3572472e117f8f008b3fc6726c1284c0ceca586e3a0e676f0406eb"</span>
    <span class="hljs-punctuation">}</span>
<span class="hljs-punctuation">}</span>
</code></pre></li><li><p>This will return a Chainlink request ID as well as a link to etherscan.</p></li></ol></li><li><p>Retrieve the random numbers using the &quot;Get Random Numbers&quot; endpoint, specifying the same network and request ID.</p><ol><li><p>Example request:</p><pre data-type="codeBlock" text="curl --location &apos;https://0xcord.com/api/vrfv2/getRandomNumber/?network=polygon_mumbai&amp;requestId=82772297461836742329238512432706064630856291450561249462036537828944094389038&apos; \
--header &apos;Authorization: xxx&apos;
"><code>curl <span class="hljs-operator">-</span><span class="hljs-operator">-</span>location <span class="hljs-string">'https://0xcord.com/api/vrfv2/getRandomNumber/?network=polygon_mumbai&#x26;requestId=82772297461836742329238512432706064630856291450561249462036537828944094389038'</span> \
<span class="hljs-operator">-</span><span class="hljs-operator">-</span>header <span class="hljs-string">'Authorization: xxx'</span>
</code></pre></li><li><p>Example response:</p><pre data-type="codeBlock" text="{
    &quot;data&quot;: {
        &quot;fulfilled&quot;: true,
        &quot;randomNumber&quot;: [
&quot;111296169371105942025256963044261804772682237016873883880854565109176540425880&quot;, &quot;48853847565293424268317777741688717343601339637655607855994234898572199201663&quot;,
&quot;22503081880076003702041350408548819131186130333868717438739033661493489536203&quot;,
&quot;78662195269794346569705780123769753316601136453919903121333806175221242048442&quot;,
&quot;26015862336455109621425908291815156389231643676531347218138706099532711105913&quot;
        ]
    }
}
"><code><span class="hljs-punctuation">{</span>
    <span class="hljs-attr">"data"</span><span class="hljs-punctuation">:</span> <span class="hljs-punctuation">{</span>
        <span class="hljs-attr">"fulfilled"</span><span class="hljs-punctuation">:</span> <span class="hljs-literal"><span class="hljs-keyword">true</span></span><span class="hljs-punctuation">,</span>
        <span class="hljs-attr">"randomNumber"</span><span class="hljs-punctuation">:</span> <span class="hljs-punctuation">[</span>
<span class="hljs-string">"111296169371105942025256963044261804772682237016873883880854565109176540425880"</span><span class="hljs-punctuation">,</span> <span class="hljs-string">"48853847565293424268317777741688717343601339637655607855994234898572199201663"</span><span class="hljs-punctuation">,</span>
<span class="hljs-string">"22503081880076003702041350408548819131186130333868717438739033661493489536203"</span><span class="hljs-punctuation">,</span>
<span class="hljs-string">"78662195269794346569705780123769753316601136453919903121333806175221242048442"</span><span class="hljs-punctuation">,</span>
<span class="hljs-string">"26015862336455109621425908291815156389231643676531347218138706099532711105913"</span>
        <span class="hljs-punctuation">]</span>
    <span class="hljs-punctuation">}</span>
<span class="hljs-punctuation">}</span>
</code></pre></li><li><p>That&apos;s it! The returned random numbers are provably verifiable on-chain and ready to use in your application.</p></li></ol></li></ol><p>In this tutorial, we&apos;ve shown you how to use 0xCord&apos;s Chainlink VRF V2 API to generate random numbers for your Web3 application. With 0xCord, you can easily provision subscriptions and start consuming VRF V2 without having to worry about managing subscriptions and monitoring balances.</p><p>Whether you prefer onchain or offchain consumption, 0xCord has you covered. By using our offchain API, you can make simple RESTful JSON API calls to start consuming VRF V2.</p><p>We hope you found this tutorial helpful and that it gets you one step closer to building your Web3 application. If you have any questions or feedback, feel free to reach out to us at <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="mailto:contact@0xcord.com">contact@0xcord.com</a>. Happy coding!</p>]]></content:encoded>
            <author>0xcord@newsletter.paragraph.com (0xCord)</author>
        </item>
    </channel>
</rss>