Nivoda might not be an unknown entity to you, if you are into an online jewellery and diamond marketplace business. Nivoda is perhaps one of the best diamond database that is shared and is accessible across the globe from where and by anyone who is into the diamond and jewellery business. Jewellery websites and diamond marketplaces often require to access the database of Nivoda through Nivoda API integration. However, before we look into the steps for integrating Nivoda to the website, let’s get a basic idea about what Nivoda is for those who are new to the jewellery business.
What is Nivoda?
Nivoda is a global diamond trading platform designed to streamline the buying and selling of diamonds and gemstones. It connects jewellery retailers, wholesalers, and manufacturers with a vast network of diamond suppliers, providing access to real-time inventory and competitive pricing.
Some of the key features of Nivoda include:
-
Offers a large selection of certified diamonds and gemstones from multiple suppliers worldwide.
-
Transparent pricing with real-time updates to help users make informed purchasing decisions.
-
Handles shipping and insurance, ensuring secure and timely delivery to customers.
-
Enables seamless integration with eCommerce platforms, allowing businesses to showcase and sell diamonds directly on their websites. This is what we are going to explore in this blog.
-
Helps businesses save on sourcing costs by aggregating options in one platform.
Being a jewellery website development company, we have tried to cover a Nivoda integration to the jewellery website in simple steps.
Steps to integrate Nivoda API in Jewellery website
Step 1: Sign Up and get credentials
Create your free account on nivoda and verify your account. You can use your email id as username and password to use the nivoda api or if you want you can also create new user from Nivoda’s admin panel for api. Nivoda provides the GraphQL staging and live API to retrieve the diamond list, diamond details, create nivoda order etc. If you are facing any API access error then please try to contact with Nivoda’s customer support to activate the account credentials and grant the api access.
Step 2: Get access token
You need to first get the access token to execute the nivoda’s GraphQL api. You can use Postman or GraphiQL to test the GraphQL api’s. Please use below code to retrieve the access token and expires time.
URL staging: https://intg-customer-staging.nivodaapi.net/api/diamonds/
URL live: https://integrations.nivoda.net/api/diamonds
Method: POST
GRAPHQL QUERY:query Authenticate($username: String!, $password: String!) {
authenticate {
username_and_password(username: $username, password: $password) {
token
expires
}
}
}
GRAPHQL VARIABLES:{
"username": “YOUR “EMAIL,
"password": “YOUR PASSWORD”
}
Step 3: Get Diamond List
There are two ways to get the diamond list.
-
Use Nivoda GraphQL API
-
Use FTP to download diamond list in CSV
1. Use Nivoda GraphQL API
Use below GraphQL query to get the list of diamonds. You need to pass bearer token retrieved from above api for authorization. You can modify the query to filter the diamond. Offset will be used to specify index from where you want to start the listing. Limit will allow you to retrieve the specified diamonds details. Your max limit will be 50 per request. You can use order to sort the diamond list. If you don’t want to apply any filter pass empty object ‘{}’ in query. You can also specify which diamond detail you want in the response. Please follow the last step to get the detail of all the available filters and query fields.
URL staging: https://intg-customer-staging.nivodaapi.net/api/diamonds/
URL live: https://integrations.nivoda.net/api/diamonds
Method: POST
GRAPHQL QUERY:query GetDiamondList {
diamonds_by_query(
query: {
labgrown: true,
shapes: ["ROUND"],
color: [H, G, F, E, D],
dollar_value: {from: 50, to: 5000000},
},
offset: 0,
limit: 50,
order: { type: createdAt, direction: DESC }
) {
items {
id
diamond {
OrderItemId
id
video
v360 {
url
}
image
certificate {
id
carats
color
clarity
symmetry
lab
shape
certNumber
pdfUrl
}
NivodaStockId
delivery_time {
min_business_days
max_business_days
}
}
price
discount
}
total_count
}
}
2. Use FTP to download diamond list in CSV
Please follow below steps:
-
Navigate to Feed Center using menu.
-
Add new feed for all the available types of diamond.
-
Copy the direct download link for all feed.
-
You can use these links to download csv on your server or also you can import the data in your database. Nivoda updates the csv after every 1 hour. So, you can download CSV hourly to get the latest diamonds.
-
You can create your custom API and add only the required filters as you want.
Integrate Nivoda API to your jewellery website today Contact Nimblechapps now! **Contact us
Step 4: Get Diamond Details
You can use the nivoda detail query to get the diamond detail or you can also use the csv to get the single diamond details. But nivoda updates the csv after every 1 hour. So, we recommend to use the nivoda diamond detail query to get the latest price and other information. Please follow the last step to get the detail of all the available filters and query fields.
URL staging: https://intg-customer-staging.nivodaapi.net/api/diamonds/
URL live: https://integrations.nivoda.net/api/diamonds
Method: POST
GRAPHQL QUERY:
query GetDiamondByID($diamond_id: ID!) {
get_diamond_by_id(diamond_id: $diamond_id) {
id
diamond {
id
OrderItemId
v360 {
url
}
video
image
delivery_time{
min_business_days
max_business_days
}
certificate {
id
lab
shape
certNumber
labgrown
color
}
NivodaStockId
final_price
show_certificate_number
HoldId
}
price
discount
markup_price
markup_discount
}
}
GRAPHQL VARIABLES:{
"diamond_id": “ID OF THE DIAMOND” // EX ID: ”e3d4fc8e-5fbe-44da-b27f-3df924cb3d46"
}
Step 5: Create Nivoda Order
You can use the GraphQL mutation provided by the nivoda to create the diamond order. It will send the diamond to your shipping address specified in your profile page. You will get the shipping status update related email on your registered email address.
URL staging: https://intg-customer-staging.nivodaapi.net/api/diamonds/
URL live: https://integrations.nivoda.net/api/diamonds
Method: POST
GRAPHQL MUTATION:
mutation {
create_order(
items: [
{
offerId: “PRODUCT TYPE/PRODUCT ID”, // SAMPLE ID: “DIAMOND/5497a505-a9f3-47ad-803a-a9dd2c2d1535"
customer_order_number: “specify your order number”,
customer_comment: “Specify any instruction for order“
}
]
)
}
Step 6: Use Nivoda GraphQL For Detailed Information
You can use the Nivoda GraphiQL to know about all the available query and mutation by nivoda. It will provide the detailed information about all the available filters and response fields for specific query and mutations. Please open below staging URL in browser and use below username and password.
URL: https://intg-customer-staging.nivodaapi.net/api/diamonds-graphiql
USERNAME: nivoda-api-docs
PASSWORD: nivoda-graphiql
Please check the nivoda’s official documentation “https://github.com/Nivoda/nivoda-api” for latest staging credentials.
Following the above mentioned steps, you can ensure a working integration of Nivoda API to your jewellery website or diamond marketplace. Explore the cost for developing jewellery website along with integration Nivoda API for a better business performance and be the part of the growing online jewellery market.
Conclusion
Integrating Nivoda into your jewellery website offers a lots of benefits that can significantly enhance your business operations and customer experience. With Nivoda, your website gains access to a vast inventory of diamonds and gemstones from global suppliers, ensuring that you can offer a wide variety of products without managing a physical inventory. The platform's real-time pricing feature ensures transparency and allows your customers to make informed purchasing decisions, boosting their trust in your brand. Furthermore, Nivoda's API integration seamlessly connects with your existing jewellery eCommerce platform, streamlining operations and enabling instant updates to your product listings. This not only simplifies inventory management but also improves website responsiveness and user experience. As part of effective jewellery website development, Nivoda integration ensures that your website stays competitive in the digital marketplace while providing customers with an enriched shopping experience.