Research Grants

CRUD endpoints for a user's research grants

Please note that in all urls & code samples you'll need to replace:username and :corporation with appropriate values

Get All Research Grants

GET /v2/organization/:corporation/expert/:username/researchgrant

Headers

Name
Value

Content-Type

application/json

Authorization

Bearer <token>

Url

Name
Type
Description

corporation

number

Corporation ID

username

string

Unique username

Response

 {
  data: [
    {
      id: 1,
      title: 'Research Grant Title',
      organization: 'Organization',
      url: 'https://grant.com',
      details: 'Details',
      date: 0,
      amount: '10',
      currency: '$'
    },
  ],
  success: true
}

Code

const data = new URLSearchParams();
const accessToken = `<ACCESS TOKEN>`

fetch('https://public-api.expertfile.com/v2/organization/:corporation/expert/:username/researchgrant', {
    method: 'GET',
    headers: {
        'Content-Type': 'application/x-www-form-urlencoded',
        'Authorization': `Bearer ${accessToken}`
    }
})
.then(response => response.json())
.then(json => {
    const { success, data } = json

    if (success) {
        const grants = data;
        console.log('all grants', grants)
    }

})
.catch(error => console.error(error));

Get Individual Research Grant

GET /v2/organization/:corporation/expert/:username/researchgrant/:id

Headers

Name
Value

Content-Type

application/json

Authorization

Bearer <token>

Url

Name
Type
Description

corporation

number

Corporation ID

username

string

Unique username

id

number

Research Grant ID

Response

 {
  data: [
    {
      id: 1,
      title: 'Research Grant Title',
      organization: 'Organization',
      url: 'https://grant.com',
      details: 'Details',
      date: 0,
      amount: '10',
      currency: '$'
    },
  ],
  success: true
}

Code

const accessToken = `<ACCESS CODE>`

fetch('https://public-api.expertfile.com/v2/organization/:corporation/expert/:username/researchgrant/:id', {
    method: 'GET',
    headers: {
        'Content-Type': 'application/x-www-form-urlencoded',
        'Authorization': `Bearer ${accessToken}`
    }
})
.then(response => response.json())
.then(json => {
    const { success, data, error } = json

    if (success) {
        console.log('grant', data)
    }

})
.catch(error => console.error(error));

Create Research Grant

POST /v2/organization/:corporation/expert/:username/researchgrant

Headers

Name
Value

Content-Type

application/json

Authorization

Bearer <token>

Url

Name
Type
Description

corporation

number

Corporation ID

username

string

Unique username

Body

Name
Type
Description

title*

string

Grant Title

organization*

string

Grant Organization

details*

string

Grant Detail

date

unix timestamp

Grant Date

url

string

Grant Url

amount

string

Grant Amount

currency

string

Grant Currency

Response

{ 
    data: { 
        id: 1
    }, 
    success: true 
}

Code

const data = new URLSearchParams();
const accessToken = `<ACCESS TOKEN>`

data.append('title', 'Grant title');
data.append('organization', 'Grant organization');
data.append('details', 'Grant details...');
data.append('amount', '100');
data.append('currency', '$');
data.append('date', 1702530000);
data.append('url', 'https://myurl.com');

fetch('https://public-api.expertfile.com/v2/organization/:corporation/expert/:username/researchgrant', {
    method: 'POST',
    headers: {
        'Content-Type': 'application/x-www-form-urlencoded',
        'Authorization': `Bearer ${accessToken}`
    },
    body: data
})
.then(response => response.json())
.then(json => {
    const { success, data, error } = json

    if (success) {
        const { id } = data
        console.log('New grant id', id)
    }

})
.catch(error => console.error(error));

Update Research Grant

PUT /v2/organization/:corporation/expert/:username/researchgrant/:id

Headers

Name
Value

Content-Type

application/json

Authorization

Bearer <token>

Url

Name
Type
Description

corporation

number

Corporation ID

username

string

Unique username

id

number

Research Grant ID

Body

Name
Type
Description

title*

string

Grant Title

organization*

string

Grant Organization

details*

string

Grant Detail

date

unix timestamp

Grant Date

url

string

Grant Url

amount

string

Grant Amount

currency

string

Grant Currency

Response

{ 
    data: { 
        id: 1, 
        updated: true 
    }, 
    success: true 
}

Code

const data = new URLSearchParams();
const accessToken = `<ACCESS TOKEN>`

data.append('title', 'Grant title');
data.append('organization', 'Grant organization');
data.append('details', 'Grant details...');
data.append('amount', '100');
data.append('currency', '$');
data.append('date', 1702530000);
data.append('url', 'https://myurl.com');

fetch('https://public-api.expertfile.com/v2/organization/:corporation/expert/:username/researchgrant/:id', {
    method: 'PUT',
    headers: {
        'Content-Type': 'application/x-www-form-urlencoded',
        'Authorization': `Bearer ${accessToken}`
    },
    body: data
})
.then(response => response.json())
.then(json => {
    const { success, data, error } = json

    if (success) {
        const { id } = data
        console.log('New patent id', id)
    }

})
.catch(error => console.error(error));

Delete Research Grant

DELETE /v2/organization/:corporation/expert/:username/researchgrant/:id

Headers

Name
Value

Content-Type

application/json

Authorization

Bearer <token>

Url

Name
Type
Description

corporation

number

Corporation ID

username

string

Unique username

id

number

Research Grant ID

Response

{ 
    data: { 
        deleted: true, 
        id: 1 
    }, 
    success: true 
}

Code

const accessToken = `<ACCESS TOKEN>`

fetch('https://public-api.expertfile.com/v2/organization/:corporation/expert/:username/researchgrant/:id', {
    method: 'DELETE',
    headers: {
        'Content-Type': 'application/x-www-form-urlencoded',
        'Authorization': `Bearer ${accessToken}`
    }
})
.then(response => response.json())
.then(json => {
    const { success, data, error } = json

    if (success) {
        const { id } = data
        console.log('Deleted grant id', id)
    }

})
.catch(error => console.error(error));

Last updated