Endpoint profiles
A profile binds an approved integration to its origin, methods and narrow
networks. The client obtains its binding through
Endpoint when the trusted
service is constructed. Never derive the profile ID from user fields,
URL parameters or request headers.
Fields
-
- Type
- string
- Default
- no default; required
Exact HTTP or HTTPS origin comprising scheme, host and optional port. No path, trailing slash, query, fragment or credentials are allowed. For example:
https://. IPv6 literals require square brackets. Default ports are canonicalized.erp. internal. example: 8443
-
- Type
- list<string>
- Default
- no default; required
Non-empty list. IPv4 networks must be no broader than /24; IPv6 networks no broader than /64. Specify individual addresses as /32 or /128 respectively. All resolved addresses must match these networks, even for an endpoint resolving publicly. Operator restrictions and hard metadata restrictions take precedence.
-
- Type
- list<string>
- Default
- no default; required
Non-empty list of valid HTTP method tokens. Comparison is exact and case sensitive. Standard names such as
GETandPOSTare uppercase.CONNECTis always excluded.
-
- Type
- string
- Default
- 'none'
noneforbids redirects.same-permits them within the same origin, subject to the general redirect limit. A redirect does not grant permission to access another endpoint.origin
-
- Type
- boolean
- Default
- false
Loopback requires both
trueand exactly one permitted /32 IPv4 or /128 IPv6 address. The entire127.network remains invalid. This setting does not permit other special or metadata addresses.0. 0. 0/ 8
-
- Type
- string
- Default
- no default; required
Non-empty UTF-8 purpose with at most 200 characters and no control characters. Describe the actual connection, such as ERP order synchronization.
-
- Type
- string
- Default
- no default; required
Non-empty responsible team or role, at most 120 UTF-8 characters, without control characters. Do not include credentials or personal secrets.
-
- Type
- string|null
- Default
- null
Actual calendar date in
YYYY-format. After that date,MM- DD config-andcheck doctorreport an overdue review; the profile is not disabled automatically.
-
- Type
- string|null
- Default
- null
Actual timestamp with timezone, for example
2027-. Optional fractional seconds have at most six digits. A date without time or an implicit server timezone is not accepted. After expiry, every new attempt is denied, including redirects, retries and sends after secret or body preparation. Transfers already in progress are not immediately revoked.04- 01T00: 00: 00Z
Address classes and revocation
A bound permission can allow narrow RFC1918, ULA and CGNAT networks. Loopback has the additional single-address rule. Link-local, multicast, documentation networks, special reserved ranges and known metadata addresses do not receive a general exception.
IPv4-mapped IPv6 targets are classified as their embedded IPv4 address
and compared with IPv4 networks. A configuration such as
:: is invalid; use
10. instead.
Profile changes require replacing the configuration snapshot and its
clients. A different registry rejects foreign or outdated contexts.
A client retained in an old worker still owns its old registry: restart
that worker to revoke access operationally. A DNS cache hit bypasses
neither the profile checks of the registry in use nor
expires.