Empresa

Resumo

A API de empresas é utilizada para a gestão das empresas que fazem uso dos serviços da goTokens.

Uma vez que o cliente tem seu usuƔrio criado ele poderƔ criar sua empresa para ter acesso aos outros serviƧos da API.

Como funciona

O cliente dever passar como parâmetro suas credenciais de usuÔrio e caso ela esteja ativo na base a empresa serÔ criada. A partir disso, é possível associar comunidades à uma empresa.

Objeto Company

Exemplo de Objeto de Empresa
{
  "id": "sd21fs5",
  "name": "ABC Company",
  "documents": [
    {
      "documentName": "cnpj",
      "documentContent": "12.345.657/0001-90"
    }
  ],
  "email": "[email protected]",
  "country": "BR",
  "tags": ["ambiental", "arte", "empreeendedorismo"],
  "status": "active",
  "hashedApiKey": "$oiudwtyh798dft13hd8",
  "users": {
    "company_admin":["pudt992"],
    "company_moderator":["321ggd","456jse"]
  }
}

Endpoints

Empresa

  • GET /v1/companies

  • GET /v1/companies/:companyId

  • GET /v1/companies/:companyId/communities

Gestão de dados da Empresa

  • GET /v1/companies/manage

  • POST /v1/companies/manage

  • GET /v1/companies/:companyId/manage

  • PATCH /v1/companies/:companyId/manage

  • GET /v1/companies/:companyId/communities/manage

Gestão de permissões da Empresa

  • GET /v1/companies/:companyId/users-roles/manage

  • POST /v1/companies/:companyId/users-roles/manage

  • DELETE /v1/companies/:companyId/users-roles/manage

  • GET /v1/companies/:companyId/users-roles/:userId/manage

  • PATCH /v1/companies/:companyId/users-roles/:userId/manage

Empresas

Lista de empresas pĆŗblicas da plataforma

GET https://goblockchain.io/gotokens-api/v1/companies/:companyId

Nƭvel de permissionamento necessƔrio: qualquer

Query Parameters

Name
Type
Description

name

String

Nome da empresa

email

String

E-mail da empresa

country

String

PaĆ­s da empresa

limit

String

Limite de resultados na busca

offset

String

Quantidade de resultados para avanƧar da busca

tags

Array

Tags da Empresa

{
  "companies": [
    {
      "id": "87wda9",
      "name": "Company A",
      "email": "[email protected]",
      "country": "BR",
      "tags": ["ambiental", "arte", "empreeendedorismo"]
    },
    {
      "id": "123egroo",
      "name": "Company B",
      "email": "[email protected]",
      "country": "BR",
      "tags": ["empreeendedorismo"]
    },
  ]
}
    

Lista as informações públicas de uma empresa

GET https://goblockchain.io/gotokens-api/v1/companies/:companyId

Nƭvel de permissionamento necessƔrio: qualquer

Path Parameters

Name
Type
Description

companyId*

String

ID da Empresa

{
  "id": "21grd8",
  "name": "ABC Company",
  "email": "[email protected]",
  "country": "BR",
  "tags": ["ambiental", "arte", "empreeendedorismo"]
}

Lista comunidades pĆŗblicas associadas Ć  uma empresa

GET https://goblockchain.io/gotokens-api/v1/companies/:companyId/communities

Nƭvel de permissionamento necessƔrio: company_admin, company_moderator

Path Parameters

Name
Type
Description

companyId*

String

ID da Empresa

Query Parameters

Name
Type
Description

name

String

Nome da Comunidade

email

String

E-mail da Comunidade

id

String

ID da Comunidade

limit

String

Limite de resultados na busca

offset

String

Quantidade de resultados para avanƧar da busca

tags

Array

Tags da Comunidade

{
  "companyId": "htf849",
  "companyName": "ABC Company",
  "communities": [
    {
      "id": "kliu78",
      "name": "Community A",
      "email": "[email protected]",
      "description": "Community A description",
      "tags": ["ambiental", "arte", "empreeendedorismo"]
    },
    {
      "id": "vxrg35",
      "name": "Community B",
      "email": "[email protected]",
      "description": "Community B description",
      "tags": ["empreeendedorismo"]
    }
  ]
}

Gestão de Empresas

(JWT) Lista as empresas que o usuƔrio logado tem acesso

GET https://goblockchain.io/gotokens-api/v1/companies/manage

Nƭvel de permissionamento necessƔrio: company_admin, company_moderator

Query Parameters

Name
Type
Description

name

String

Nome da empresa

email

String

E-mail da empresa

country

String

PaĆ­s da empresa

limit

String

Limite de resultados na busca

offset

String

Quantidade de resultados para avanƧar da busca

tags

Array

Tags da empresa

Headers

Name
Type
Description

authorization*

Bearer

JWT

{
  "companies": [
    {
      "id": "87wda9",
      "name": "Company A",
      "email": "[email protected]",
      "country": "BR",
      "tags": ["ambiental", "arte", "empreeendedorismo"]
      "role": "company_admin"
    },
    {
      "id": "123egroo",
      "name": "Company B",
      "email": "[email protected]",
      "country": "BR",
      "tags": ["empreeendedorismo"]
      "role": "company_moderator"
    },
  ]
}
    

(JWT) Cria uma empresa com as informaƧƵes dadas

POST https://goblockchain.io/gotokens-api/v1/companies/manage

Nƭvel de permissionamento necessƔrio: company_admin

Headers

Name
Type
Description

authorization*

Bearer

JWT

Request Body

Name
Type
Description

name*

String

Nome da Empresa

email*

String

E-mail da empresa

documents*

[Objects]

Documentos enviados pela empresa

country*

String

PaĆ­s da empresa

tags

Array

Tags da empresa

{
  "id": "htr979",
  "name": "ABC Company",
  "documents": [
    {
      "documentName": "cnpj",
      "documentContent": "12.345.657/0001-90"
    }
  ],
  "email": "[email protected]",
  "hashedApiKey": "API-KEY-0058-4897",
  "tags": ["ambiental", "arte", "empreeendedorismo"]
  "country": "BR",
  "status": "active"
}

(JWT) Lista as informaƧƵes de uma empresa

GET https://goblockchain.io/gotokens-api/v1/companies/:companyId/manage

Nƭvel de permissionamento necessƔrio: company_admin, company_moderator

Path Parameters

Name
Type
Description

companyId*

String

ID da Empresa

{
  "id": "21grd8",
  "name": "ABC Company",
  "documents": [
    {
      "documentName": "cnpj",
      "documentContent": "12.345.657/0001-90"
    }
  ],
  "email": "[email protected]",
  "country": "BR",
  "tags": ["ambiental", "arte", "empreeendedorismo"]
  "status": "active"
}

(JWT) Atualiza uma empresa com as informaƧƵes passadas

PATCH https://goblockchain.io/gotokens-api/v1/companies/:companyId/manage

Nƭvel de permissionamento necessƔrio: company_admin, company_moderator

Path Parameters

Name
Type
Description

companyId*

String

ID da Empresa

Request Body

Name
Type
Description

name

String

Nome da Empresa

email

String

E-mail da empresa

documents

[Objects]

Documentos enviados pela empresa

country

String

PaĆ­s da empresa

tags

Array

Tags da empresa

{
  "id": "21grd8",
  "name": "ABC Company",
  "documents": [
    {
      "documentName": "cnpj",
      "documentContent": "12.345.657/0001-90"
    }
  ],
  "email": "[email protected]",
  "country": "BR",
  "tags": ["ambiental", "arte", "empreeendedorismo"]
  "status": "active"
}

(JWT) Lista comunidades associadas Ć  uma empresa

GET https://goblockchain.io/gotokens-api/v1/companies/:companyId/communities/manage

Nƭvel de permissionamento necessƔrio: company_admin, company_moderator

Path Parameters

Name
Type
Description

companyId*

String

ID da Empresa

Query Parameters

Name
Type
Description

name

String

Nome da Comunidade

email

String

E-mail da Comunidade

id

String

ID da Comunidade

limit

String

Limite de resultados na busca

offset

String

Quantidade de resultados para avanƧar da busca

tags

Array

Tags da Comunidade

Headers

Name
Type
Description

authorization*

Bearer

JWT

{
  "companyId": "htf849",
  "companyName": "ABC Company",
  "communities": [
    {
      "id": "kliu78",
      "name": "Community A",
      "email": "[email protected]",
      "description": "Community A description",
      "tags": ["ambiental", "arte", "empreeendedorismo"]
    },
    {
      "id": "vxrg35",
      "name": "Community B",
      "email": "[email protected]",
      "description": "Community B description",
      "tags": ["empreeendedorismo"]
    }
  ]
}

Gestão de permissões da Empresa

(JWT) Lista usuƔrios associados Ơ uma empresa

GET https://goblockchain.io/gotokens-api/v1/companies/:companyId/users-roles/manage

Nƭvel de permissionamento necessƔrio: company_admin, company_moderator

Path Parameters

Name
Type
Description

companyId*

String

ID da Empresa

Query Parameters

Name
Type
Description

name

String

Nome do UsuƔrio

email

String

E-mail do UsuƔrio

role

String

Nƭvel de acesso do UsuƔrio Ơquela Empresa

id

String

ID do UsuƔrio

limit

String

Limite de resultados na busca

offset

String

Quantidade de resultados para avanƧar da busca

Headers

Name
Type
Description

authorization*

Bearer

JWT

{
  "companyId": "htf849",
  "companyName": "ABC Company",
  "users": {
    "company_admin":[
      {
        "id": "pudt992",
        "name": "User A",
        "email": "[email protected]",
      }
    ],
    "company_moderator":[
      {
        "id": "321ggd",
        "name": "User D",
        "email": "[email protected]"
      },
      {
        "id": "456jse",
        "name": "User E",
        "email": "[email protected]"
      }
    ]
  }
}

(JWT) Associa usuƔrios Ơ um nƭvel de permissionamento em uma empresa

POST https://goblockchain.io/gotokens-api/v1/companies/:companyId/users-roles/manage

Nƭvel de permissionamento necessƔrio: company_admin

Path Parameters

Name
Type
Description

companyId*

String

ID da Empresa

Headers

Name
Type
Description

authorization*

Bearer

JWT

Request Body

Name
Type
Description

id*

String

ID do UsuƔrio

role*

String

Nƭvel de acesso do UsuƔrio Ơquela Empresa

{
  "company": {
    "id": "htf849"
    "name": "Company B",
    "email": "[email protected]"
  },
  "user": {
    "id" : "486daw",
    "name": "User B",
    "email": "[email protected]"
  },
  "role": "company_moderator"
}

(JWT) Remove a associação de um usuÔrio à uma empresa

DELETE https://goblockchain.io/gotokens-api/v1/companies/:companyId/users-roles/:userId/manage

Nƭvel de permissionamento necessƔrio: company_admin

Path Parameters

Name
Type
Description

companyId*

String

ID da Empresa

userId*

String

ID do UsuƔrio

Headers

Name
Type
Description

authorization*

Bearer

JWT

(JWT) Lista dados e permissƵes que um usuƔrio tem em uma empresa

GET https://goblockchain.io/gotokens-api/v1/companies/:companyId/users-roles/:userId/manage

Nƭvel de permissionamento necessƔrio: company_admin, company_moderator

Path Parameters

Name
Type
Description

userId*

String

ID do UsuƔrio

companyId*

String

ID da Empresa

Headers

Name
Type
Description

authorization*

Bearer

JWT

{
    "company": {
        "id": "htf849"
        "name": "Company B",
        "email": "[email protected]"
    },
    "user": {
        "id" : "486daw",
        "name": "User B",
        "email": "[email protected]"
    },
    "role": "company_moderator"
}

(JWT) Atualiza permissƵes que um usuƔrio tem em uma empresa

PATCH https://goblockchain.io/gotokens-api/v1/companies/:companyId/users-roles/:userId/manage

Nƭvel de permissionamento necessƔrio: company_admin

Path Parameters

Name
Type
Description

userId*

String

ID do UsuƔrio

companyId*

String

ID da Empresa

Headers

Name
Type
Description

authorization*

Bearer

JWT

Request Body

Name
Type
Description

role*

String

Nƭvel de acesso do UsuƔrio Ơquela Empresa

{
    "company": {
        "id": "htf849"
        "name": "Company B",
        "email": "[email protected]"
    },
    "user": {
        "id" : "486daw",
        "name": "User B",
        "email": "[email protected]"
    },
    "role": "company_admin"
}

Last updated

Was this helpful?