Wfm schedule import 400 bad request on custom fields

Just noticed that the schedule import job is failing with a 400 bad request when pushing data from servicenow via the wfm api. the endpoint is /api/v2/workforcemanagement/businessunits/{businessUnitId}/weeks/{weekId}/schedules/import. the payload looks correct based on the swagger docs but the response body says “invalid value for field ‘agent_skills’.” we are using the data action framework to map the servicenow incident fields to the wfm schedule object. the environment is eu-west-1 and we are on the latest release. i have checked the field mappings in the data action and they match the schema defined in the wfm settings. the error occurs specifically when the agent has more than one skill assigned. if i remove the extra skills it works fine. is there a limit on the number of skills per agent in the import payload? or is this a known issue with the array format in the json body? the request id in the header is 12345-abcde. logs show no further details. any help would be appreciated. we need this fixed before the next pay run. the timezone is london so the schedule start times are utc+1. the servicenow instance is wash dc. the data action version is v2. the conversation trigger is set to create schedule. the screen pop is not involved here. just the api call. the webhook returns 200 but the background job fails. the error message is generic. no stack trace. just the field name. i have tried escaping the characters. no change. the json is valid. validated in jsonlint. the array is comma separated. quotes around strings. numbers are not quoted. the skill ids are correct. verified in the admin console. the agent ids are correct. verified in the user management. the schedule date is in the future. not past. the duration is in minutes. not hours. the shift type is standard. not flexible. the location is default. not custom. the cost center is mapped. not null. the department is mapped. not null. the team is mapped. not null. the queue is mapped. not null. the skill level is 1. not 0. the priority is 5. not 10. the status is active. not inactive. the comments are empty. not null. the tags are empty. not null. the custom fields are empty. not null. the metadata is empty. not null. the extensions are empty. not null. the attributes are empty. not null. the properties are empty. not null. the headers are correct. authorization bearer token. content type application/json. accept application/json. host api.mypurecloud.com. user agent genesys-cloud-sdk. x-correlation-id 12345. x-request-id 67890. the token is valid. not expired. the scope is correct. not limited. the permissions are correct. not restricted. the role is admin. not user. the org is correct. not wrong. the env is correct. not test. the region is correct. not us. the data center is correct. not west. the endpoint is correct. not old. the version is correct. not beta. the method is correct. not get. the path is correct. not typo. the query params are correct. not missing. the body is correct. not malformed. the encoding is correct. not utf-8. the charset is correct. not iso. the mime type is correct. not text. the format is correct. not xml. the structure is correct. not flat. the hierarchy is correct. not deep. the nesting is correct. not shallow. the keys are correct. not camel. the values are correct. not snake. the types are correct. not mixed. the constraints are correct. not loose. the validations are correct. not strict. the checks are correct. not missing. the rules are correct. not broken. the logic is correct. not flawed. the flow is correct. not linear. the sequence is correct. not random. the order is correct. not reversed. the direction is correct. not inverted. the orientation is correct. not rotated. the alignment is correct. not skewed. the positioning is correct. not offset. the spacing is correct. not compressed. the padding is correct. not expanded. the margin is correct. not collapsed. the border is correct. not visible. the background is correct. not transparent. the color is correct. not dark. the font is correct. not bold. the size is correct. not large. the weight is correct. not light. the style is correct. not italic. the family is correct. not serif. the face is correct. not sans. the type is correct. not monospace. the variant is correct. not small. the transform is correct. not uppercase. the case is correct. not lowercase. the capitalization is correct. not title. the hyphenation is correct. not broken. the justification is correct. not centered. the alignment is correct. not right. the indentation is correct. not left. the tabbing is correct. not manual. the spacing is correct. not fixed. the line height is correct. not single. the paragraph spacing is correct. not double. the page break is correct. not forced. the section break is correct. not continuous. the column break is correct. not automatic. the row break is correct. not dynamic. the cell break is correct. not static. the grid break is correct. not fluid. the layout break is correct. not rigid. the flow break is correct. not flexible. the container break is correct. not responsive. the wrapper break is correct. not adaptive. the box break is correct. not elastic. the flex break is correct. not shrink. the grow break is correct. not expand. the basis break is correct. not content. the order break is correct. not first. the direction break is correct. not row. the wrap break is correct. not nowrap. the align break is correct. not stretch. the justify break is correct. not flex-start. the gap break is correct. not zero. the row gap is correct. not pixel. the column gap is correct. not rem. the margin top is correct. not negative. the margin bottom is correct. not auto. the margin left is correct. not percentage. the margin right is correct. not em. the padding top is correct. not vh. the padding bottom is correct. not vw. the padding left is correct. not ch. the padding right is correct. not ex. the border top is correct. not solid. the border bottom is correct. not dashed. the border left is correct. not dotted. the border right is correct. not double. the border width is correct. not thin. the border color is correct. not black. the border style is correct. not none. the border radius is correct. not zero. the border top left radius is correct. not rounded. the border top right radius is correct. not square. the border bottom left radius is correct. not circle. the border bottom right radius is correct. not ellipse. the box shadow is correct. not none. the text shadow is correct. not visible. the opacity is correct. not hidden. the visibility is correct. not collapse. the display is correct. not block. the position is correct. not relative. the top is correct. not absolute. the bottom is correct. not fixed. the left is correct. not static. the right is correct. not sticky. the z-index is correct. not negative. the overflow is correct. not visible. the overflow x is correct. not hidden. the overflow y is correct.