[loops-so/loops-js README]: Add custom properties at loops.so/docs/contacts/properties in your Loops account first, then reference them in API calls. The default properties (id, email, firstName, lastName, source, subscribed, userGroup, userId, optInStatus) always work. When a call fails, the SDK throws APIError with the API JSON in error.json and the HTTP code in error.statusCode (rawBody holds the raw text when the response was not valid JSON), so log both instead of guessing.

Context: A Loops API call using a custom contact property fails. Custom contact properties must be created in the Loops account before the API will accept them.

## Matched source
Source: Source: https://github.com/loops-so/loops-js/blob/HEAD/README.md
Original query: "Loops: custom contact property rejected - add it in the Loops dashboard first"
Key terms: contact, custom, dashboard, first, loops, property, rejected
