Records that the operator granted this config's connected account access to one provider-side resource — a file or folder chosen in the provider's picker.
Needed for scopes that don't determine reach on their own: Google's `drive.file` grants access to nothing except files Fruxon created or the user explicitly picked, so without this list such a connection can't touch a single pre-existing file. This mirrors a grant that actually lives at the provider — picking the file in the Picker is what grants it; this call records that it happened so the config page can show it and, later, so a tool call can pre-flight against it. Recording a resource here does <b>not</b> grant anything, and re-posting an existing id refreshes its stored name rather than erroring. Deliberately separate from the anonymous `oauth/authentication-completed` callback, which records the same fact from the mid-run OAuth redirect and is keyed on an encrypted flow token. This one is an authenticated operator action against a specific config.
Authorization
Bearer JWT Authorization header using the Bearer scheme. Enter 'Bearer' [space] and then your token.
In: header
Path Parameters
The integration ID.
The configuration ID.
uuidThe tenant identifier
Query Parameters
The maximum number of items to return per page
int32int32Opaque cursor token from an external system (e.g. RAG API). When set, M:Fruxon.Common.Collections.PageToken.AsString returns this value directly instead of encoding Fruxon.Common.Collections.PageToken.Skip.
The resource being recorded.
Provider-native resource id (e.g. a Google Drive file or folder id).
1 <= length <= 150Name shown to the operator, as the picker reported it. Optional, but strongly preferred — a bare provider id identifies nothing to a human reading the config page later.
length <= 150Provider's own word for the resource kind ("file", "folder").
length <= 150Response Body
curl -X POST "https://api.fruxon.com/v1/tenants/string/integrations/string/configs/497f6eca-6276-4993-bfeb-53cbbbba6f08/resources" \ -H "Content-Type: application/json" \ -d '{ "id": "string" }'{
"items": [
{
"id": "string",
"displayName": "string",
"kind": "string",
"grantedAt": 0
}
],
"nextPageToken": "string",
"totalCount": 0
}{
"type": "string",
"title": "string",
"status": 0,
"detail": "string",
"instance": "string",
"property1": null,
"property2": null
}{
"type": "string",
"title": "string",
"status": 0,
"detail": "string",
"instance": "string",
"property1": null,
"property2": null
}Removes a resource from this config's recorded grants.
Fruxon's list is a mirror, so this does <b>not</b> revoke anything at the provider — Google keeps its `drive.file` grant until the user removes Fruxon's access from their Google account. The honest reading is "stop claiming we have this", not "we no longer do".
Restores a soft-deleted configuration.
Clears the soft-delete marker, re-enabling the credential for resolution — the escape hatch for a historical revision (or a revert to one) that still pins a config deleted under the sever semantics. Rejected with 400 if the config isn't currently soft-deleted. See `docs/design/integration-config-deletion-lifecycle.md`.