---
updatedAt: 2026-05-28T19:21:10.000Z
agentTools:
  projectIndex: https://docs.notagateway.com.br/llms.txt
---

# Vincular Certificado

Vincula um certificado digital a empresa

> ❗️ **Atenção**, devido a limitações da nossa ferramenta de documentação de API, este endpoint não pode ser executado diretamente por aqui.
>
> Ao executá-lo à partir da nossa documentação, você irá receber um erro com a mensagem:\
> **415 - Unsupported Media Type**
>
> Ou seja, execute este endpoint através do Postman, ou através do seu próprio código fonte para garantir o funcionamento correto.
>
> Em caso de dúvidas basta enviar um e-mail para [suporte@notagateway.com.br ](mailto:suporte@notagateway.com.br).

<br />

# OpenAPI definition

```json
{
  "openapi": "3.1.0",
  "info": {
    "title": "visão-geral",
    "version": "1"
  },
  "servers": [
    {
      "url": "https://api.notagateway.com.br"
    }
  ],
  "components": {
    "securitySchemes": {
      "sec0": {
        "type": "apiKey",
        "in": "header",
        "name": "Authorization",
        "x-bearer-format": "basic"
      }
    }
  },
  "security": [
    {
      "sec0": []
    }
  ],
  "paths": {
    "/v1/empresas/{empresaId}/certificadoDigital": {
      "post": {
        "summary": "Vincular Certificado",
        "description": "Vincula um certificado digital a empresa",
        "operationId": "vincular-certificado-empresa",
        "parameters": [
          {
            "name": "empresaId",
            "in": "path",
            "description": "Identificador único da Empresa relacionada a Nota Fiscal que deseja inserir",
            "schema": {
              "type": "string"
            },
            "required": true
          },
          {
            "name": "Accept",
            "in": "header",
            "required": true,
            "schema": {
              "type": "string",
              "default": "application/json"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "arquivo",
                  "senha"
                ],
                "properties": {
                  "arquivo": {
                    "type": "string",
                    "description": "Arquivo .PFX ou .P12 do certificado digital (A1)",
                    "format": "binary"
                  },
                  "senha": {
                    "type": "string",
                    "description": "Senha do certificado digital"
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "200",
            "content": {
              "application/json": {
                "examples": {
                  "Result": {
                    "value": "{}"
                  }
                },
                "schema": {
                  "type": "object",
                  "properties": {}
                }
              }
            }
          },
          "400": {
            "description": "400",
            "content": {
              "application/json": {
                "examples": {
                  "Result": {
                    "value": "{\n    \"Message\": \"The request is invalid.\"\n}"
                  }
                },
                "schema": {
                  "type": "object",
                  "properties": {
                    "Message": {
                      "type": "string",
                      "example": "The request is invalid."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "401",
            "content": {
              "application/json": {
                "examples": {
                  "Result": {
                    "value": "[\n    {\n        \"codigo\": \"AUT002\",\n        \"mensagem\": \"Acesso negado. APIKey invalida, por favor verifique se setou o header do request corretamente com uma APIKey válida, por exemplo: \\\"Authorization: Basic {your-APIKey-here}\\\".\"\n    }\n]"
                  }
                },
                "schema": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "codigo": {
                        "type": "string",
                        "example": "AUT002"
                      },
                      "mensagem": {
                        "type": "string",
                        "example": "Acesso negado. APIKey invalida, por favor verifique se setou o header do request corretamente com uma APIKey válida, por exemplo: \"Authorization: Basic {your-APIKey-here}\"."
                      }
                    }
                  }
                }
              }
            }
          },
          "403": {
            "description": "403",
            "content": {
              "application/json": {
                "examples": {
                  "Result": {
                    "value": "[\n    {\n        \"codigo\": \"AUT001\",\n        \"mensagem\": \"Acesso negado. APIKey invalida, por favor verifique se ela está correta.\"\n    }\n]"
                  }
                },
                "schema": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "codigo": {
                        "type": "string",
                        "example": "AUT001"
                      },
                      "mensagem": {
                        "type": "string",
                        "example": "Acesso negado. APIKey invalida, por favor verifique se ela está correta."
                      }
                    }
                  }
                }
              }
            }
          },
          "500": {
            "description": "500",
            "content": {
              "text/plain": {
                "examples": {
                  "Result": {
                    "value": "Erro interno do servidor"
                  }
                }
              }
            }
          }
        },
        "deprecated": false,
        "x-readme": {
          "code-samples": [
            {
              "language": "csharp",
              "code": "public bool UploadCertificado(Guid empresaId, byte[] byCertificado, string senhaCertificado)\n{\n  try\n  {\n    var fileName = Guid.NewGuid().ToString() + \".pfx\";\n    var streamContent = new ByteArrayContent(byCertificado);\n    streamContent.Headers.ContentDisposition = new ContentDispositionHeaderValue(\"form-data\") { FileName = fileName, Name = \"arquivo\" };\n\n    var formData = new MultipartFormDataContent();\n    formData.Add(new StringContent(senhaCertificado, Encoding.UTF8, _config.DefaultContentType), \"senha\");\n    formData.Add(streamContent, \"arquivo\", fileName);\n    \n    using (var httpClient = new HttpClient())\n    {\n        httpClient.DefaultRequestHeaders.Clear();\n        httpClient.DefaultRequestHeaders.Add(\"Authorization\", \"Basic {Sua-ApiKey-Aqui}\");\n        httpClient.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue(\"application/json\"));\n\n      using (var request = new HttpRequestMessage(HttpMethod.Post, string.Format(\"https://api.enotasgw.com.br/v1/empresas/{0}/certificadoDigital\", empresaId)))\n      {\n         request.Content = formData;\n\n         using (var response = httpClient.SendAsync(request).Result)\n         {\n           var resultContent = response.Content.ReadAsStringAsync().Result;\n\n           if (response.IsSuccessStatusCode)\n           {\n              return true;\n           }\n           else\n           {\n              throw new Exception(((int)response.StatusCode) + \" - \" + response.ReasonPhrase);\n           }\n         }\n       }\n     }\n  }\n  catch (Exception)\n  {\n    throw;\n  }\n}",
              "name": "Exemplo C#"
            },
            {
              "language": "php",
              "code": "<?php\n\theader('Content-Type: text/html; charset=utf-8');\n\t\n\trequire('../src/eNotasGW.php');\n\t\n\tuse eNotasGW\\Api\\Exceptions as Exceptions;\n\tuse eNotasGW\\Api\\fileParameter as fileParameter;\n\n\teNotasGW::configure(array(\n\t\t'apiKey' => '{api key}',\n\t));\n\t\n\t$empresaId = '{empresa id}';\n\t\n\ttry\n\t{\n\t\t$file = fileParameter::fromPath('{certificate file path}.pfx', \n\t\t\t'application/x-pkcs12', '{file name}.pfx');\n\t\t$pass = '{your pass}';\n\t\t\n\t\teNotasGW::$EmpresaApi->atualizarCertificado($empresaId, $file, $pass);\n\t\techo 'Certificado atualizado com sucesso!';\n\t}\n\tcatch(Exceptions\\invalidApiKeyException $ex) {\n\t\techo 'Erro de autenticação: </br></br>';\n\t\techo $ex->getMessage();\n\t}\n\tcatch(Exceptions\\unauthorizedException $ex) {\n\t\techo 'Acesso negado: </br></br>';\n\t\techo $ex->getMessage();\n\t}\n\tcatch(Exceptions\\apiException $ex) {\n\t\techo 'Erro de validação: </br></br>';\n\t\techo $ex->getMessage();\n\t}\n\tcatch(Exceptions\\requestException $ex) {\n\t\techo 'Erro na requisição web: </br></br>';\n\t\t\n\t\techo 'Requested url: ' . $ex->requestedUrl;\n\t\techo '</br>';\n\t\techo 'Response Code: ' . $ex->getCode();\n\t\techo '</br>';\n\t\techo 'Message: ' . $ex->getMessage();\n\t\techo '</br>';\n\t\techo 'Response Body: ' . $ex->responseBody;\n\t}\n?>",
              "name": "Exemplo PHP"
            }
          ],
          "samples-languages": [
            "csharp",
            "php"
          ]
        }
      }
    }
  },
  "x-readme": {
    "headers": [],
    "explorer-enabled": true,
    "proxy-enabled": true
  },
  "x-readme-fauxas": true
}
```