How to create a participant with a full profile

How to create a participant with a full profile

Use this guide when you want to register a new participant and populate as many profile fields as possible in a single request, avoiding the need for a subsequent update call.


What you'll need before starting

What you need

Where to get it

Participant category ID

GET /api/v2/account/getCategories?event_id=


Request

Bash
curl -X POST "https://your-event-domain.com/api/v2/account/set" \
  -H "Authorization: Bearer your_api_key_here" \
  -F "event_id=7" \
  -F "first_name=Jane" \
  -F "last_name=Smith" \
  -F "email=jane.smith@example.com" \
  -F "status=ACTIVE" \
  -F "job_title=Head of Partnerships" \
  -F "company_name=Acme Corp" \
  -F "country=GB" \
  -F "city=London" \
  -F "tel=+447911123456" \
  -F "website=https://acmecorp.com" \
  -F "linkedin_page=https://linkedin.com/in/janesmith" \
  -F "description=Jane leads global partnership initiatives at Acme Corp." \
  -F "category_id=5" \
  -F "default_lang=en"

Response

JSON
{
  "code": 200,
  "errors": null,
  "data": {
    "id": 12346,
    "email": "jane.smith@example.com",
    "status": "created",
    "external_id": null,
    "errors": []
  },
  "response_id": "1700000000.12346"
}

Things to watch out for

  • Country and city: Resolved against the platform's location database. If not recognised, the field is skipped and a non-fatal error appears in data.errors — the account is still created

  • Category ID: Must be valid for this event — use getCategories to confirm before sending

  • Photo: Pass a publicly accessible URL in the photo field. Accepted formats: image/png, image/jpeg

⚠️ Do not hardcode send_email=true — it fires a registration email on every request it is included in, not only on creation.