Skip to content

Crear una campaña

POST /api/marketing/campaigns

Crea la campaña en Meta y devuelve el objeto releído. Sin status nace PAUSED. special_ad_categories viaja siempre (vacío si no se declara ninguna) porque Meta lo exige. daily_budget y lifetime_budget son excluyentes: mandar los dos es 400. Los montos van en centavos de la moneda de la cuenta, sin convertir. La combinación válida de objetivo, optimización y facturación la valida Meta del lado del servidor: Neike valida solo que cada valor pertenezca a su enum y devuelve el error de Meta mapeado. Requiere scope marketing:manage.

FieldTypeDescription
ad_account_idstringrequiredCuenta publicitaria de Meta, con prefijo. Example: "act_123".
namestringrequiredExample: "Tráfico · septiembre".
objectiveAPP_INSTALLS · BRAND_AWARENESS · CONVERSIONS · EVENT_RESPONSES · LEAD_GENERATION · LINK_CLICKS · LOCAL_AWARENESS · MESSAGES · OFFER_CLAIMS · OUTCOME_APP_PROMOTION · OUTCOME_AWARENESS · OUTCOME_ENGAGEMENT · OUTCOME_LEADS · OUTCOME_SALES · OUTCOME_TRAFFIC · PAGE_LIKES · POST_ENGAGEMENT · PRODUCT_CATALOG_SALES · REACH · STORE_VISITS · VIDEO_VIEWSrequired
special_ad_categoriesNONE · EMPLOYMENT · HOUSING · CREDIT · ISSUES_ELECTIONS_POLITICS · ONLINE_GAMBLING_AND_GAMING · FINANCIAL_PRODUCTS_SERVICES[]optionalCategorías de anuncio especial. Meta lo exige siempre: si no viene se manda []. Default: [].
statusACTIVE · PAUSED · DELETED · ARCHIVEDoptionalSi no viene, la campaña se crea PAUSED (nadie empieza a gastar sin pedirlo). Default: "PAUSED".
buying_typeAUCTION · RESERVEDoptional
daily_budgetnumberoptionalPresupuesto diario en centavos. Excluyente con lifetime_budget. Example: 100000.
lifetime_budgetnumberoptionalPresupuesto total en centavos. Excluyente con daily_budget. Example: null.
bid_strategyLOWEST_COST_WITHOUT_CAP · LOWEST_COST_WITH_BID_CAP · COST_CAP · LOWEST_COST_WITH_MIN_ROASoptional
spend_capnumberoptionalTope de gasto de la campaña, en centavos.
start_timestringoptionalExample: "2026-09-01T00:00:00-0300".
stop_timestringoptionalExample: "2026-09-30T23:59:59-0300".
StatusDescriptionSchema
201CampaignDto
Terminal window
curl -X POST https://api.neike.dev/api/marketing/campaigns \
-H "x-neike-api-key: whk_live_…" \
-H "Content-Type: application/json" \
-d '{
"ad_account_id": "act_123",
"name": "Tráfico · septiembre",
"objective": "APP_INSTALLS"
}'
FieldTypeDescription
idstringrequiredExample: "120210000000000000".
namestringrequiredExample: "Tráfico · septiembre".
objectiveAPP_INSTALLS · BRAND_AWARENESS · CONVERSIONS · EVENT_RESPONSES · LEAD_GENERATION · LINK_CLICKS · LOCAL_AWARENESS · MESSAGES · OFFER_CLAIMS · OUTCOME_APP_PROMOTION · OUTCOME_AWARENESS · OUTCOME_ENGAGEMENT · OUTCOME_LEADS · OUTCOME_SALES · OUTCOME_TRAFFIC · PAGE_LIKES · POST_ENGAGEMENT · PRODUCT_CATALOG_SALES · REACH · STORE_VISITS · VIDEO_VIEWSoptional
statusACTIVE · PAUSED · DELETED · ARCHIVEDoptional
effective_statusstringoptionalEstado efectivo calculado por Meta (incluye los de revisión y los heredados de la cuenta). Es de solo lectura y tiene más valores que status. Example: "PAUSED".
special_ad_categoriesNONE · EMPLOYMENT · HOUSING · CREDIT · ISSUES_ELECTIONS_POLITICS · ONLINE_GAMBLING_AND_GAMING · FINANCIAL_PRODUCTS_SERVICES[]optional
buying_typeAUCTION · RESERVEDoptional
daily_budgetstringoptionalPresupuesto diario en centavos. Example: "100000".
lifetime_budgetstringoptionalPresupuesto total en centavos. Example: "500000".
spend_capstringoptionalTope de gasto en centavos. Example: "1000000".
bid_strategyLOWEST_COST_WITHOUT_CAP · LOWEST_COST_WITH_BID_CAP · COST_CAP · LOWEST_COST_WITH_MIN_ROASoptional
start_timestringoptionalExample: "2026-09-01T00:00:00-0300".
stop_timestringoptionalExample: "2026-09-30T23:59:59-0300".
created_timestringoptional
updated_timestringoptional