---
id: TST-PFM-INT-486
title: credentials
kind: api-lifecycle
product_area: platform
module: integrations
revision: 1
status: draft
source_sha:
  services-platform: ad3f6a6582843008ed0f5a17b131878d15829af1
  macroservice-libraries: 54536a441935c6e09fdb7f96f0bec71c52ba4e03
  react-console: baf6dae382d6f41dce976c7f848667ccc37e076f
repository: services-platform
files:
  - modules/integrations/tests/e2e/credentials.e2e.spec.js
implements:
  - ATS-PFM-INT-001-11
  - ATS-PFM-INT-005-01
  - ATS-PFM-INT-005-02
  - ATS-PFM-INT-005-09
environment: local
implementation_state: implemented
latest_result: not-run
latest_run_at: null
latest_run_ref: null
conformance: not-verified
estimated_minutes: 5
isolation: >-
  Use the suite-owned database fixtures and its declared cleanup; prepare the test database before
  integration or lifecycle execution.
evidence:
  - 'services-platform:modules/integrations/tests/e2e/credentials.e2e.spec.js'
test_cases:
  - source: >-
      services-platform:modules/integrations/tests/e2e/credentials.e2e.spec.js#answers the credential’s
      id, when it was configured and the last four characters of the key
    provenance: test
  - source: 'services-platform:modules/integrations/tests/e2e/credentials.e2e.spec.js#answers no value'
    provenance: test
  - source: >-
      services-platform:modules/integrations/tests/e2e/credentials.e2e.spec.js#writes the value to no
      line the function writes, which it does write (the premise)
    provenance: test
  - source: >-
      services-platform:modules/integrations/tests/e2e/credentials.e2e.spec.js#is refused to a caller who
      manages connections but not their credentials
    provenance: test
  - source: >-
      services-platform:modules/integrations/tests/e2e/credentials.e2e.spec.js#refuses values the method
      does not declare, naming the field and not the value
    provenance: test
  - source: >-
      services-platform:modules/integrations/tests/e2e/credentials.e2e.spec.js#answers the hint, the
      method and the management of the stored key
    provenance: test
  - source: >-
      services-platform:modules/integrations/tests/e2e/credentials.e2e.spec.js#answers no value, secret
      name or version, and never stores the answer
    provenance: test
  - source: >-
      services-platform:modules/integrations/tests/e2e/credentials.e2e.spec.js#answers a null credential
      for a connection with nothing stored
    provenance: test
  - source: >-
      services-platform:modules/integrations/tests/e2e/credentials.e2e.spec.js#is read with
      platform.integrations.read alone
    provenance: test
  - source: >-
      services-platform:modules/integrations/tests/e2e/credentials.e2e.spec.js#answers 404 for a
      connection the tenant does not have
    provenance: test
  - source: >-
      services-platform:modules/integrations/tests/e2e/credentials.e2e.spec.js#is refused a caller
      without the permission (403)
    provenance: test
  - source: >-
      services-platform:modules/integrations/tests/e2e/credentials.e2e.spec.js#tells a key connection to
      enter a new credential, with 409
    provenance: test
  - source: >-
      services-platform:modules/integrations/tests/e2e/credentials.e2e.spec.js#answers an OAuth
      connection the provider’s authorization URL
    provenance: test
  - source: >-
      services-platform:modules/integrations/tests/e2e/credentials.e2e.spec.js#answers the public
      callback a page for a state nobody issued, with no signed context
    provenance: test
  - source: >-
      services-platform:modules/integrations/tests/e2e/credentials.e2e.spec.js#lists the integration’s
      declared secrets by name and version, never a value
    provenance: test
  - source: >-
      services-platform:modules/integrations/tests/e2e/credentials.e2e.spec.js#writes a new version of a
      declared secret
    provenance: test
  - source: >-
      services-platform:modules/integrations/tests/e2e/credentials.e2e.spec.js#refuses a purpose the
      integration does not declare
    provenance: test
  - source: >-
      services-platform:modules/integrations/tests/e2e/credentials.e2e.spec.js#is refused to a tenant’s
      administrator
    provenance: test
dependency_evidence:
  provenance: test
  source: 'services-platform:modules/integrations/tests/e2e/credentials.e2e.spec.js'
  reviewed:
    - Suite introduction
    - Fixture setup
    - Client substitutions
    - Assertions and cleanup
---
# credentials

## Verification Boundary

This database and service suite exercises credentials. Its registration records the executable definition; no run result is asserted.

## What This Suite Proves

The bindings identify the detailed outcomes asserted by this suite. Test-level evidence retains the individual checks, including cases where several suites contribute to one scenario.

## What It Does Not Prove

In-process execution does not establish deployed infrastructure or a real provider response. Several bindings can supply different parts of a detailed scenario; no single-file completeness is implied.

## Real Dependencies and Test Doubles

The suite definition identifies its database fixtures and replaced clients, hooks, clocks or executors. Integration runs use the prepared database; lifecycle runs exercise the in-process route or adapter path.

## Must Not Be Doubled

The database constraints, transactions and service behavior claimed by an integration binding must execute. Replaced external seams cannot establish live provider or infrastructure behavior.
