Saltar al contenido

Confirma e enfileira a importação

POST/api/members/imports/{id}/start

Auth
Requiere token
Quién puede:
moderator
X-CommunityId
X-CommunityId Envía el X-CommunityId de la comunidad en la que ocurre la operación.
Las descripciones de los endpoints vienen de la especificación de la API y, por ahora, están en portugués. La interfaz alrededor está traducida.

Owner e admin. Recebe o mesmo corpo do preview, com `mapping` e `options` obrigatórios: `role` só `member` ou `moderator`; `origin` obrigatória (até 150 caracteres, texto simples, sem link; vai no e-mail, escapada); com coluna `consent`, `consentValues` não vazio; sem ela, `consentDeclaration: true`. O clique é a confirmação: grupos e tags que faltam (da coluna Grupos/Tags) e os campos `newField` são criados no processamento, sem outra etapa. Responde **202** antes de qualquer e-mail: o processamento é assíncrono (fila, lotes de 200 linhas, retomável). Cada pessoa nova recebe o convite da importação (conta nova: link de definir senha, 7 dias; conta existente: "você foi adicionado(a)"), com a origem e o link "Agradeço o convite, mas não quero participar"; quem já era membro não recebe. Os envios não contam na cota de campanhas. Ao terminar, quem importou recebe um e-mail com o resumo. Acompanhe em `GET /api/members/imports/{id}`. **Comunidade suspensa pela Memberfy** (F-86): 403 com `errors`, `code: COMMUNITY_SUSPENDED` e o motivo (em `message` e em `reason`) para owner, admin, moderador e financeiro; nada é criado nem enviado. Suspensa durante o processamento, a importação para no próximo lote: vira `INTERRUPTED`, as linhas restantes não criam perfil, nenhum convite a mais sai e quem importou recebe o resumo dizendo que foi interrompida pela suspensão.

Parámetros

NombreDóndeTipoDescripción
idobligatoriopathstring (uuid)

Headers

NombreTipoDescripción
X-CommunityIdopcionalstring (uuid)ID da comunidade em que a operação acontece. Obrigatório na maioria dos endpoints com escopo de comunidade.

Cuerpo de la solicitud application/json

NombreTipoDescripción
sheetopcionalstring
headerRowopcionalinteger≥ 1, ≤ 30
delimiteropcionalstring
encodingopcionalstring
mappingobligatorioobject[]
mapping[].columnobligatoriointegerO `index` da coluna, como veio na análise.
mapping[].targetobligatorioignore | email | firstName | lastName | phone | tags | groups | consent | field | newField
mapping[].fieldKeyopcionalstringCom `field`: a `key` de um campo customizado existente.
mapping[].newFieldopcionalobjectCom `newField`: o campo criado na hora, sempre opcional.
mapping[].newField.labelopcionalstringmax 120
mapping[].newField.typeopcionalTEXT | NUMBER | DATE | SELECT | BOOLEAN
optionsobligatorioobject
options.roleopcionalmember | moderator
options.groupIdsopcionalstring (uuid)[]
options.tagsopcionalstring[]
options.originopcionalstringDe onde veio a lista. Obrigatória no start; texto simples, sem link; vai no e-mail. · max 150
options.consentValuesopcionalstring[]Com uma coluna `consent`: os valores que contam como sim.
options.consentDeclarationopcionalbooleanSem coluna `consent`: a declaração aceita (obrigatória no start).

Respuestas

CódigoDescripción
202Enfileirada.
400Requisição inválida — falha de validação.
401Token ausente, inválido ou expirado.
403Autenticado, mas sem permissão para esta operação.
404Recurso não encontrado.
409Já confirmada ou abandonada.
429Outra planilha está sendo lida nesta comunidade (uma por vez) ou no servidor. Tente de novo em instantes (`reason: busy`).

Ejemplo con curl

curl -X POST "https://api.memberfy.net/api/members/imports/<id>/start" \
  -H "Authorization: Bearer $TOKEN" \
  -H "X-CommunityId: $COMMUNITY_ID" \
  -H "Content-Type: application/json" \
  -d '{"mapping":[{}],"options":{}}'