MemorySync
API Reference · Control-plane API

Integrations

Read the organization integration catalog with the published control-plane SDK, including optional category filtering and tenant-resolved connection state.

Endpoint contract

GET/api/v1/integrations/catalog
200 OK
MethodPathPurpose
GET/api/v1/integrations/catalogCatalog plus configured/connected flags.
GET/api/v1/integrations/connectedTenant-connected integrations.
GET/api/v1/integrations/statsConnection summary statistics.

Authentication, permission, and scope

ControlRequired contract
AuthenticationBearer access token.
Permission or scopeintegrations:read scope.
Resource scopeConnected state and statistics are resolved for the caller’s tenant membership.

Request fields

FieldTypeContract
categorystring queryOptional catalog category filter.
Request bodynoneRead endpoints do not accept a JSON body.

Code examples

import os
from memorysync import ControlPlaneClient
client = ControlPlaneClient(
base_url="https://api.memorysync.io",
access_token=os.environ["MEMORYSYNC_ACCESS_TOKEN"],
)
integrations = client.list_integrations()

Response shape

response.json
[{"id":"notion","name":"Notion","description":"Import approved workspace content","category":"knowledge","features":["import"],"auth_type":"oauth","is_configured":false,"is_connected":true,"coming_soon":false}]
  • Catalog entries and connected records use different response models.
  • Connected integration configuration excludes keys whose names end in _secret.

Status outcomes

HTTP outcomes
2xx
Request completed

Read the operation-specific response and persist only fields needed by the task.

400 / 422
Correct the request

Fix invalid path, query, or body fields before trying again.

401 / 403
Access denied

Refresh authentication or verify the required organization permission and scope.

404
Unavailable in scope

Treat the resource as unavailable without revealing whether it exists elsewhere.

429 / 5xx
Keep the action recoverable

Use returned retry metadata when present and reconcile uncertain mutations before repeating them.

Production handling

Production request path
  1. 01

    Authorize

    APP

    Confirm the signed-in principal may perform this product action.

  2. 02

    Validate

    INPUT

    Validate identifiers and body fields before sending the request.

  3. 03

    Call

    SDK

    Use the named ControlPlaneClient method or equivalent HTTPS request from a trusted application context.

  4. 04

    Inspect

    RESULT

    Treat availability and connection status as separate fields.

  5. 05

    Reconcile

    SAFE

    Use the dedicated connected or stats endpoint when the task needs tenant state rather than catalog metadata.

Security notes

Control-plane safety

Required

Keep organization controls inside trusted boundaries.

  • Do not expose provider credentials through your application response.
  • Apply your source-system authorization before displaying imported content.
  • Treat imported content as untrusted data when used in model context.

Avoid

Do not weaken the route contract in client code.

  • Do not expose bearer or refresh tokens in URLs, logs, or public clients.
  • Do not accept organization, member, project, or resource IDs without application authorization.
  • Do not treat returned data as trusted HTML, prompt instructions, or proof of application authorization.
Was this page helpful?