All systems operational

Contract API Response Changes

Completed
Scheduled for August 04, 2023 at 2:18 AM – 3:18 AM

Affects

Integrations
Push API
Updates
  • Completed
    August 04, 2023 at 3:18 AM
    Completed
    August 04, 2023 at 3:18 AM

    Maintenance has completed successfully

  • In progress
    August 04, 2023 at 2:18 AM
    In progress
    August 04, 2023 at 2:18 AM

    Maintenance is now in progress

  • Update
    August 04, 2023 at 2:18 AM
    Planned
    August 04, 2023 at 2:18 AM

    This change may affect customers using our Contract Validation API if logic is applied to the exact string that is returned for a failed API request.

    Affected Endpoint

    POST /api/validate/payload

    Summary of Changes:

    When a given payload fails validation the root level, the message key of the response to this endpoint will now return a dynamically generated summary of the validation errors instead of the fixed string "The given data was invalid". The summary includes the first failed validation rule message, and an indication of the number of additional error messages in parentheses if there are more than one.

    Previous Message:
    "message": "The given data was invalid.",

    After planned change:
    "message": "The generated at field is required. (and 14 more errors)",

    New Response Behaviour

    A message key contains a dynamically generated string in the format "{first validation rule failure message} (and {n} more errors)". The errors key contains an object with keys matching each field which has failed validation and values. Each key has a value comprising an array of failed validation rule messages. (The errors key is unchanged).

    `{
        "message": "The generated at field is required. (and 14 more errors)",
        "errors": {
            "generated_at": [
                "The generated at field is required."
            ],
            "identifiers.id": [
                "The identifiers.id field is required."
            ],
            "data.name": [
                "The data.name field is required."
            ],
            "data.start_time": [
                "The data.start time field is required."
            ],
            "data.end_time": [
                "The data.end time field is required."
            ],
            "data.short_description": [
                "The data.short description field must be present."
            ],
            "data.description": [
                "The data.description field must be present."
            ],
            "data.person_count_goal": [
                "The data.person count goal field must be present."
            ],
            "data.venue_name": [
                "The data.venue name field must be present."
            ],
            "data.venue_address": [
                "The data.venue address field must be present."
            ],
            "data.timezone": [
                "The data.timezone field must be present."
            ],
            "data.updated_at": [
                "The data.updated at field is required."
            ],
            "data.created_at": [
                "The data.created at field is required."
            ],
            "data.metadata": [
                "The data.metadata field must be present."
            ],
            "data.categories": [
                "The data.categories field must be present."
            ]
        }
    }`
    
  • Planned
    July 13, 2023 at 10:42 PM
    Planned
    July 13, 2023 at 10:42 PM

    We have revised the maintenance date.