Adicionar anexo a PDF - Incorporação de arquivos API
PDF4me Adicionar anexo a PDF Permite adicionar anexos de arquivos a PDF documentos, criando pacotes de documentos abrangentes com arquivos incorporados. Isto API processos de serviço PDF documentos e vários tipos de arquivos anexos, incorporando-os diretamente em PDFs. O API recebe fonte PDF arquivos e arquivos anexos através de REST API chamadas, utilizando Base64 Codificação para transmissão segura de arquivos. Com suporte a múltiplos tipos de arquivo e processamento em lote de anexos, esta solução é ideal para sistemas de gerenciamento de documentos, fluxos de trabalho corporativos e aplicações empresariais que exigem confiabilidade. PDF Funcionalidade de anexo.
Autenticando seu API Solicitar
Para acessar o PDF4me REST APIPara que uma solicitação seja aceita, é necessário incluir as credenciais de autenticação adequadas. A autenticação garante a segurança da comunicação e valida sua identidade como usuário autorizado do sistema. REST API.
Principais características
- Vários tipos de arquivoSuporte para diversos formatos de anexos, incluindo texto, imagens e documentos.
- Anexos em loteAdicionar vários anexos a um único arquivo. PDF documento
- Base64 CodificaçãoTransmissão segura de conteúdo de arquivos usando Base64 codificação
- Preservação de DocumentosMantém o original PDF estrutura ao adicionar anexos
- Nomeação flexívelPersonalize os nomes dos anexos para melhor organização.
- Embalagem profissionalCrie pacotes de documentos abrangentes com recursos incorporados.
REST API Ponto final
O PDF4me REST API usa padrão HTTP Métodos para interagir com recursos. Todas as operações de adição de anexos são realizadas por meio de um único ponto de extremidade:
- Método: POST
- Ponto final:
/api/v2/AddAttachmentToPdf
REST API Parâmetros
Lista completa de parâmetros para Adicionar Anexo a PDF REST APIOs parâmetros estão organizados por categoria para melhor compreensão e implementação.
Importante: Os parâmetros marcados com um asterisco (*) são obrigatórios e devem ser fornecidos para o API para funcionar corretamente.
Parâmetros obrigatórios
| Parâmetro | Tipo | Descrição | Exemplo |
|---|---|---|---|
| nomeDoDocumento* | String | Saída PDF nome do arquivo com extensão .pdf | output.pdf |
| conteúdo do documento* | Base64 | O conteúdo da entrada PDF arquivo codificado em Base64 | JVBERi... |
| anexos* | Array | Matriz de objetos de anexo para incorporar no PDFCada objeto deve conter docName (string) e docContent (string base64) | Veja o exemplo abaixo. |
Estrutura do objeto de anexo
Cada item no attachments O array deve ser um objeto com a seguinte estrutura:
| Parâmetro | Tipo | Descrição | Exemplo |
|---|---|---|---|
| nomeDoDocumento | String | Nome do arquivo anexo com extensão (ex.: .txt, .pdf, .jpg, etc.) | attachment.txt |
| conteúdo do documento | Base64 | O conteúdo do arquivo anexo está codificado em Base64 | RXhhbXBsZSBvZiBhdHRhY2htZW50IGZpbGUuIA== |
Parâmetros opcionais
| Parâmetro | Tipo | Descrição | Exemplo |
|---|---|---|---|
| assíncrono | Boolean | Ative o processamento assíncrono. Quando true, o API retorna o status 202 e fornece uma opção de sondagem. URL no Location cabeçalho | true |
Saída
O PDF4me Adicionar anexo a PDF REST API Retorna respostas diferentes dependendo do modo de processamento. API retorna o PDF como um Base64string codificada em JSON formato, não como dados binários.
- Success Response
- Asynchronous Processing
- Error Responses
- Response Format Details
Processamento síncrono (padrão)
Quando async não está definido ou está definido como false, o API processa a solicitação imediatamente:
Código de status: 200 OK
Tipo de conteúdo: application/json
Corpo da resposta:
{
"docName": "output.pdf",
"docContent": "JVBERi0xLjQKJeLjz9MKMSAwIG9iago8PAovVHlwZSAvQ2F0YWxvZwovUGFnZXMgMiAwIFIKPj4KZW5kb2JqCjIgMCBvYmoKPDwKL1R5cGUgL1BhZ2VzCi9LaWRzIFszIDAgUl0KL0NvdW50IDEKPD4KZW5kb2JqCjMgMCBvYmoKPDwKL1R5cGUgL1BhZ2UKL1BhcmVudCAyIDAgUgovTWVkaWFCb3ggWzAgMCA2MTIgNzkyXQovUmVzb3VyY2VzIDw8Ci9Gb250IDw8Ci9GMSA0IDAgUgo+Pgo+PgovQ29udGVudHMgNSAwIFIKPj4KZW5kb2JqCjQgMCBvYmoKPDwKL1R5cGUgL0ZvbnQKL1N1YnR5cGUgL1R5cGUxCi9CYXNlRm9udCAvSGVsdmV0aWNhCj4+CmVuZG9iago1IDAgb2JqCjw8Ci9MZW5ndGggNDQKPj4Kc3RyZWFtCkJUCi9GMSAxMiBUZgoxMDAgNzAwIFRkCihIZWxsbyBXb3JsZCkgVGoKRVQKZW5kc3RyZWFtCmVuZG9iagp4cmVmCjAgNgowMDAwMDAwMDAwIDY1NTM1IGYgCjAwMDAwMDAwMDkgMDAwMDAgbiAKMDAwMDAwMDA1NCAwMDAwMCBuIAowMDAwMDAwMTAxIDAwMDAwIG4gCjAwMDAwMDAxNzAgMDAwMDAgbiAKMDAwMDAwMDI0NCAwMDAwMCBuIAp0cmFpbGVyCjw8Ci9TaXplIDYKL1Jvb3QgMSAwIFIKPj4Kc3RhcnR4cmVmCjM0MQolJUVPRg=="
}
Campos de resposta:
- nomeDoDocumento (string): A saída PDF nome do arquivo
- conteúdo do documento (string): O PDF arquivo com anexos incorporados, codificado como Base64 corda
Como usar:
- Extraia o
docContentcampo do JSON resposta - Decifre o Base64 string para obter o binário PDF dados
- Salvar ou processar o PDF arquive conforme necessário
Exemplo (JavaScript):
const response = await fetch(url, options);
const data = await response.json();
const pdfBytes = atob(data.docContent); // Decode Base64
// Save or process pdfBytes
Processamento assíncrono
Quando async: true está definido, o API processa a solicitação de forma assíncrona:
Código de status: 202 Aceito
Cabeçalhos de resposta:
Location: https://api.pdf4me.com/api/v2/AddAttachmentToPdf/poll/12345-abcde-67890
Processo de votação:
- Extraia o
Locationcabeçalho da resposta 202 - Faça a pesquisa URL usando GET solicitações
- Continue votando até receber um 200 OK status
- A resposta final contém o mesmo JSON formato com
docNameedocContent(Base64)
Exemplo de votação:
// Initial request returns 202 with Location header
const response = await fetch(url, options);
const location = response.headers.get('Location');
// Poll until complete
while (true) {
const pollResponse = await fetch(location, { headers: { 'Authorization': 'Basic ' + apiKey } });
if (pollResponse.status === 200) {
const data = await pollResponse.json();
// Process data.docContent (Base64 PDF)
break;
}
await new Promise(resolve => setTimeout(resolve, 2000)); // Wait 2 seconds
}
Respostas de erro
O API retorna padrão HTTP Códigos de erro com detalhes do erro:
- Parâmetros de solicitação inválidos
- Campos obrigatórios ausentes (
nomeDoDocumento,conteúdo do documento,anexos) - Inválido Base64 codificação em
conteúdo do documentoou anexoconteúdo do documento - Estrutura de objeto de anexo inválida
- Inválido ou ausente API chave
- API chave não está corretamente Base64 codificado em Authorization cabeçalho
- Ausente
Autorização: Básicacabeçalho
- Erro de processamento no servidor
- PDF falha de processamento
- Falha na incorporação do anexo
Formato da resposta de erro:
{
"error": "Error message describing what went wrong"
}
Detalhes do formato da resposta
Importante: O API sempre retorna JSON, nunca binário PDF dados diretamente.
Estrutura da resposta:
{
"docName": "string", // Output PDF filename
"docContent": "string" // Base64-encoded PDF content
}
Cabeçalho Content-Type:
- Sucesso:
application/json - O PDF está incorporado como um Base64 string dentro do JSON resposta
Por que Base64?
- JSON-Codificação segura para dados binários
- Fácil de transmitir HTTP
- Compatível com todas as linguagens de programação.
- Pode ser incorporado diretamente em JSON sem escapar dos problemas
Decodificando Base64 para PDF:
JavaScript/Node.js:
const base64 = response.docContent;
const binary = atob(base64); // Browser
// OR
const binary = Buffer.from(base64, 'base64').toString('binary'); // Node.js
Python:
import base64
pdf_bytes = base64.b64decode(response['docContent'])
with open('output.pdf', 'wb') as f:
f.write(pdf_bytes)
C#:
byte[] pdfBytes = Convert.FromBase64String(response.docContent);
File.WriteAllBytes("output.pdf", pdfBytes);
Exemplo de solicitação
Cabeçalho
Content-Type: application/json
Authorization: Basic YOUR_BASE64_ENCODED_API_KEY
Observação:
- Adquira o seu API chave do PDF4me Painel
- O API a chave deve ser Base64 codificado e prefixado com "Básico" no Authorization cabeçalho
- Exemplo: Se o seu API chave é
abc123, codifique-o para Base64 e usarAuthorization: Basic YWJjMTIz
Carga útil
Fixação única:
{
"docName": "output.pdf",
"docContent": "JVBERi0xLjQKJeLjz9MKMSAwIG9iago8PAovVHlwZSAvQ2F0YWxvZwovUGFnZXMgMiAwIFIKPj4KZW5kb2JqCjIgMCBvYmoKPDwKL1R5cGUgL1BhZ2VzCi9LaWRzIFszIDAgUl0KL0NvdW50IDEKPD4KZW5kb2JqCjMgMCBvYmoKPDwKL1R5cGUgL1BhZ2UKL1BhcmVudCAyIDAgUgovTWVkaWFCb3ggWzAgMCA2MTIgNzkyXQovUmVzb3VyY2VzIDw8Ci9Gb250IDw8Ci9GMSA0IDAgUgo+Pgo+PgovQ29udGVudHMgNSAwIFIKPj4KZW5kb2JqCjQgMCBvYmoKPDwKL1R5cGUgL0ZvbnQKL1N1YnR5cGUgL1R5cGUxCi9CYXNlRm9udCAvSGVsdmV0aWNhCj4+CmVuZG9iago1IDAgb2JqCjw8Ci9MZW5ndGggNDQKPj4Kc3RyZWFtCkJUCi9GMSAxMiBUZgoxMDAgNzAwIFRkCihIZWxsbyBXb3JsZCkgVGoKRVQKZW5kc3RyZWFtCmVuZG9iagp4cmVmCjAgNgowMDAwMDAwMDAwIDY1NTM1IGYgCjAwMDAwMDAwMDkgMDAwMDAgbiAKMDAwMDAwMDA1NCAwMDAwMCBuIAowMDAwMDAwMTAxIDAwMDAwIG4gCjAwMDAwMDAxNzAgMDAwMDAgbiAKMDAwMDAwMDI0NCAwMDAwMCBuIAp0cmFpbGVyCjw8Ci9TaXplIDYKL1Jvb3QgMSAwIFIKPj4Kc3RhcnR4cmVmCjM0MQolJUVPRg==",
"attachments": [
{
"docName": "output.txt",
"docContent": "RXhhbXBsZSBvZiBhdHRhY2htZW50IGZpbGUuIA=="
}
]
}
Vários anexos:
{
"docName": "output.pdf",
"docContent": "JVBERi0xLjQKJeLjz9MKMSAwIG9iago8PAovVHlwZSAvQ2F0YWxvZwovUGFnZXMgMiAwIFIKPj4KZW5kb2JqCjIgMCBvYmoKPDwKL1R5cGUgL1BhZ2VzCi9LaWRzIFszIDAgUl0KL0NvdW50IDEKPD4KZW5kb2JqCjMgMCBvYmoKPDwKL1R5cGUgL1BhZ2UKL1BhcmVudCAyIDAgUgovTWVkaWFCb3ggWzAgMCA2MTIgNzkyXQovUmVzb3VyY2VzIDw8Ci9Gb250IDw8Ci9GMSA0IDAgUgo+Pgo+PgovQ29udGVudHMgNSAwIFIKPj4KZW5kb2JqCjQgMCBvYmoKPDwKL1R5cGUgL0ZvbnQKL1N1YnR5cGUgL1R5cGUxCi9CYXNlRm9udCAvSGVsdmV0aWNhCj4+CmVuZG9iago1IDAgb2JqCjw8Ci9MZW5ndGggNDQKPj4Kc3RyZWFtCkJUCi9GMSAxMiBUZgoxMDAgNzAwIFRkCihIZWxsbyBXb3JsZCkgVGoKRVQKZW5kc3RyZWFtCmVuZG9iagp4cmVmCjAgNgowMDAwMDAwMDAwIDY1NTM1IGYgCjAwMDAwMDAwMDkgMDAwMDAgbiAKMDAwMDAwMDA1NCAwMDAwMCBuIAowMDAwMDAwMTAxIDAwMDAwIG4gCjAwMDAwMDAxNzAgMDAwMDAgbiAKMDAwMDAwMDI0NCAwMDAwMCBuIAp0cmFpbGVyCjw8Ci9TaXplIDYKL1Jvb3QgMSAwIFIKPj4Kc3RhcnR4cmVmCjM0MQolJUVPRg==",
"attachments": [
{
"docName": "file1.txt",
"docContent": "RXhhbXBsZSBvZiBhdHRhY2htZW50IGZpbGUuIA=="
},
{
"docName": "file2.pdf",
"docContent": "JVBERi0xLjQKJeLjz9MK..."
}
],
"async": true
}
Exemplos de código
O PDF4me Adicionar anexo a PDF REST API Fornece exemplos de código em várias linguagens de programação. Escolha a linguagem que melhor se adapta ao seu ambiente de desenvolvimento:
- C#
- Java
- JavaScript
- Python
- Salesforce
- n8n
- Google Script
- AWS Lambda
Java Amostra
Java Implementação com tratamento completo de erros e processamento de respostas:
JavaScript Amostra
Node.js e compatível com navegadores JavaScript Implementação:
PDF Características de fixação
Processamento de anexos
- Vários tipos de arquivoSuporte para diversos formatos de anexos, incluindo arquivos de texto (.txt, .csv, .log), documentos (.pdf, .doc, .docx, .xls, .xlsx), imagens (.jpg, .jpeg, .png, .gif), arquivos compactados (.zip, .rar) e outros tipos de arquivo.
- Processamento em loteAdicionar vários anexos a um único arquivo. PDF documento em uma única operação, fornecendo uma matriz de objetos anexos
- Base64 CodificaçãoTransmissão segura do conteúdo do arquivo usando Base64 codificação
- Nomeação de ArquivosCada anexo deve incluir um
docNamecom a extensão de arquivo apropriada
Aprimoramento de Documentos
- PDF PreservaçãoMantém o original PDF estrutura e conteúdo ao adicionar anexos
- Organização de Arquivos: Nomeação e organização personalizadas de anexos incorporados por meio do
docNamecampo - Portabilidade de DocumentosCriar pacotes de documentos autossuficientes com todos os arquivos relacionados incorporados no PDF
- Embalagem profissionalGere pacotes de documentos abrangentes para distribuição.
Tratamento de respostas
- Processamento síncronoPor padrão, o API processa solicitações de forma síncrona e retorna o PDF com anexos (status 200)
- Processamento assíncrono: Definir
async: truepara permitir o processamento assíncrono. O API retorna o status 202 com uma sondagem URL no Location cabeçalho - Resposta Binária: O API retorna o PDF arquivar como conteúdo binário (application/pdf) quando bem-sucedido
Casos de uso e aplicações industriais
- Legal & Professional Services
- Education & Research
- Business & Enterprise
- Technology & Development
Casos de uso de serviços jurídicos e profissionais
- Documentação LegalInclua arquivos de provas, contratos e documentos comprobatórios.
- Documentos JudiciaisAnexe documentos comprobatórios aos autos judiciais e às petições legais.
- Documentação do Cliente: Organizar os documentos do cliente com materiais de apoio
- Documentação de ConformidadeIncluir certificados, licenças e documentos regulamentares.
Casos de uso em educação e pesquisa
- Artigos acadêmicosIncluir conjuntos de dados, materiais de pesquisa e informações complementares.
- Documentação de pesquisaAnexe dados de pesquisa e materiais suplementares.
- Submissão de Teses: Empacotar as teses com documentos e conjuntos de dados de apoio.
- Materiais de treinamentoIncorporar recursos, exercícios e guias de referência.
Casos de uso para empresas e negócios
- Relatórios de negóciosAnexe planilhas, gráficos e arquivos de análise detalhados.
- Entregáveis do projeto: Compacte todos os arquivos do projeto em um único documento PDF
- Pacotes de DocumentosCriar pacotes de documentos abrangentes com materiais de apoio.
- Documentação CorporativaInclua materiais de apoio nos documentos corporativos.
Casos de uso de tecnologia e desenvolvimento
- Documentação técnica: Incorpore exemplos de código, arquivos de configuração e materiais de referência
- Documentação do SoftwareAnexe os arquivos de código e as especificações técnicas.
- Documentação da APIIncluir exemplos de código e arquivos de configuração.
- Recursos para desenvolvedores: Recursos e materiais de referência para desenvolvedores de pacotes