Dropbox Sign API
Your request seems to have been malformed and returned the following error:
→ Missing parameter: client_id
async function fetchSignUrl() {
try {
const response = await fetch(`https://api.hellosign.com/v3/embedded/sign_url/${signature_id}`, {
method: 'GET',
headers: {
'Authorization': `Basic ${btoa(API_KEY + ':')}`
}
});
if (!response.ok) {
throw new Error(`HTTP error! Status: ${response.status}`);
}
const data = await response.json();
if (data && data.embedded && data.embedded.sign_url) {
setSignUrl(data.embedded.sign_url);
}
} catch (error) {
console.error("There was a problem fetching the sign URL:", error);
}
}
Hi!
Based on the error message that you are encountering, it looks like you are not passing the client_id parameter while opening the signature request on an iframe.
Dropbox Sign provides a library that takes care of building and displaying the iframe on your platform. If you are using a modern module bundler with npm, simply install hellosign-embedded on your application.
Once your application has the hellosign-embedded library installed, you would use the following code snippet below to open the iframe:
const client = new HelloSign();
// Opening the iframe in Test Mode
client.open( "YOUR_SIGN_URL", {
testMode: true,
clientId: 'YOUR_CLIENT_ID',
skipDomainVerification: true,
});
Feel free to use our Embedded Testing Tool during testing as well.
Hope this helps!
Hi!
Based on the error message that you are encountering, it looks like you are not passing the client_id parameter while opening the signature request on an iframe.
Dropbox Sign provides a library that takes care of building and displaying the iframe on your platform. If you are using a modern module bundler with npm, simply install hellosign-embedded on your application.
Once your application has the hellosign-embedded library installed, you would use the following code snippet below to open the iframe:
const client = new HelloSign();
// Opening the iframe in Test Mode
client.open( "YOUR_SIGN_URL", {
testMode: true,
clientId: 'YOUR_CLIENT_ID',
skipDomainVerification: true,
});
Feel free to use our Embedded Testing Tool during testing as well.
Hope this helps!
The error you're encountering, "Missing parameter: client_id," is specific to the HelloSign API. In the HelloSign API, the client_id is a required parameter for authentication and authorization purposes. It's typically used to identify your application when making API requests.
To resolve this issue, you need to include the client_id parameter in your API request headers. Here's how you can modify your fetchSignUrl function to include the client_id:
async function fetchSignUrl() {
try {
const client_id = 'YOUR_CLIENT_ID'; // Replace with your actual HelloSign client ID
const response = await fetch(`https://api.hellosign.com/v3/embedded/sign_url/${signature_id}`, {
method: 'GET',
headers: {
'Authorization': `Basic ${btoa(API_KEY + ':')}`,
'HelloSign-ClientId': client_id, // Include the client_id in the headers
}
});
if (!response.ok) {
throw new Error(`HTTP error! Status: ${response.status}`);
}
const data = await response.json();
if (data && data.embedded && data.embedded.sign_url) {
setSignUrl(data.embedded.sign_url);
}
} catch (error) {
console.error("There was a problem fetching the sign URL:", error);
}
}
Make sure to replace 'YOUR_CLIENT_ID' with your actual HelloSign client ID, which you should have obtained when setting up your HelloSign integration. Including the client_id in the headers should resolve the "Missing parameter: client_id" error you're encountering.
Hi there!
If you need more help you can view your support options (expected response time for a ticket is 24 hours), or contact us on X or Facebook.
For more info on available support options for your Dropbox plan, see this article.
If you found the answer to your question in this Community thread, please 'like' the post to say thanks and to let us know it was useful!