Skip to content

New-MgExternalConnectionItem returns 404 errors #3375

@westleyMS

Description

@westleyMS

Describe the bug

I am trying to create new external connection items for an external connector, and I get a 404 not-found error message in response.
Here is the command I use-
$newItem = New-MgExternalConnectionItem -ExternalConnectionId "samplecon" -id $id -Properties $props -Content $content -Acl $acl

A fiddler trace of the above call shows this-
POST https://graph.microsoft.com/v1.0/external/connections/samplecon/items

The body is this-
{
"id": "R06",
"acl": [
{
"accessType": "grant",
"type": "everyoneExceptGuests",
"value": "56713e33-e7c4-4ce4-ac45-a4ae33ab87b7"
}
],
"properties": {
"title": "Adding Test Items",
"language": "hu-HU",
"floor": [
"London_B1"
],
"[email protected]": "Collection(String)",
"recordId": "R06"
},
"content": {
"type": "text",
"value": "A new item R06"
}
}

Expected behavior

I expect the new-item to be created and stored in the $newItem variable.

How to reproduce

  1. connect with MGGraph-
    Connect-MgGraph -ClientId "{client_id}" -TenantId "{tenant}.onmicrosoft.com" -certificate $x509Cert

#Make sure the app has ExternalConnection.ReadWrite.OwnedBy | ExternalConnection.ReadWrite.All and ExternalItem.ReadWrite.OwnedBy | ExternalItem.ReadWrite.All

  1. create the external connection
    $newConnector = New-MgExternalConnection -BodyParameter $connector

  2. add the schema for the external connection
    $schemaUpdateResp = Update-MgExternalConnectionSchema -ExternalConnectionId $newConnector.Id -BodyParameter $schema

  3. add an external connection item to the connection
    $newItem = New-MgExternalConnectionItem -ExternalConnectionId "samplecon" -id $id -Properties $props -Content $content -Acl $acl

SDK Version

2.27.0 Microsoft.Graph.Search

Latest version known to work for scenario above?

?

Known Workarounds

The $id, $acl, and $props are all good because if I use fiddler to resend the request, but modify it to use the verb PUT and add the ID to the URL, it works. This is how the Graph REST API has in the documentation-
https://learn.microsoft.com/en-us/graph/connecting-external-content-manage-items#add-an-item

Debug output

Click to expand log ```
</details>


### Configuration

_No response_

### Other information

_No response_

Metadata

Metadata

Assignees

No one assigned

    Labels

    status:waiting-for-triageAn issue that is yet to be reviewed or assignedtype:bugA broken experience

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions