Skip to main content

Concept of Profile and Projects

User Profile and Projects

In NEST Backend-as-a-Service (BaaS), all data (items, files, images, requests, etc.) are linked to a project. Each project has its unique project ID. Projects are linked to a user profile.

We automatically generate a default project for each user. If no project ID is provided, the default project is used.

To fetch all your projects and their IDs, send a GET request to /v1/projects.

curl --location 'https://api.nest.appbaza.com/v1/projects' \
--header 'Authorization: Bearer _YOUR_API_TOKEN_'

On a successful request, you will receive a response similar to the following:

[
{
"id": "_ID_OF_THE_DEFAULT_PROJECT_",
"name": "default"
}
]

Create a new project

Users can create as many projects as they want. Each project has its unique project ID.

info

For example, the project concept is useful when you want to separate your development and production environments. Or, you can create a project for each of your apps.

To create a new project, send a POST request to /v1/projects with the following information:

curl --location 'https://api.nest.appbaza.com/v1/projects' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer _YOUR_API_TOKEN_' \
--data '{
"name": "MY-FIRST-PROJECT"
}'

On a successful request, you will receive generated project ID in the response:

{
"id": "453cf828-8e4a-4ed5-b375-4806b7f87b73",
"name": "MY-FIRST-PROJECT"
}

Select a project

Clients can select a project for each request by sending a nest-project-id header. If no project ID is provided, the default project is used.

Good way to test this is to send a GET request to /v1/pingpong with a project ID:

curl --location 'https://api.nest.appbaza.com/v1/pingpong' \
--header 'Authorization: Bearer _YOUR_API_TOKEN' \
--header 'nest-project-id: 453cf828-8e4a-4ed5-b375-4806b7f87b73'

On a successful request, you will receive a response similar to the following:

{
// ...
"metadata": {
"nest": {
"nest.project.resolved_name": "MY-FIRST-PROJECT",
"nest.project.resolved_id": "453cf828-8e4a-4ed5-b375-4806b7f87b73",
"nest.project.id": "453cf828-8e4a-4ed5-b375-4806b7f87b73"
}
// ...
}

If you send a wrong project ID, NEST Backend will use the default project, and you will see the following response:

{
// ...
"metadata": {
"nest": {
"nest.project.resolved_name": "default",
"nest.project.resolved_id": "_ID_OF_THE_DEFAULT_PROJECT_",
"nest.project.id": ""
}
// ...
}

Here, project is resolved to the default project and user provided project ID (nest.project.id) is empty.





NEST: Backend as a Service / Overview / User Details, Profile, and Projects

Metadata:
  • Generated: 2023-09-22
  • Last updated: 2023-09-22

Message or email us with feedback, questions, or requests.