v51

latestOpenAPI 3.0.3Mozilla Public License Version 2.0raw.githubusercontent.com2026-08-0165205256.0 KB
Keys

Create custom key / Import key

You can use this endpoint to import existing keys into Tyk or to create a new custom key.

post/tyk/keys/{keyID}

Path parameters

keyIDstring required

Name to give the custom key.

Query parameters

suppress_reset'1'

Adding the suppress_reset parameter and setting it to 1, will cause Tyk not to reset the quota limit that is in the current live quota manager. By default Tyk will reset the quota in the live quota manager (initialising it) when adding a key. Adding the suppress_reset flag to the URL parameters will avoid this behaviour.

hashedboolean

When set to true the key_hash returned will be similar to the un-hashed key name.

Request body

access_rightsobject nullable
aliasstring
allowancenumber double
apply_policiesstring[] nullable
apply_policy_idstring

deprecated use apply_policies going forward instead to send a list of policies ids

certificatestring
data_expiresinteger
date_createdstring date-time
enable_detail_recordingboolean

deprecated use enable_detailed_recording going forward instead

enable_detailed_recordingboolean
enable_http_signature_validationboolean
expiresinteger
hmac_enabledboolean
hmac_stringstring
id_extractor_deadlineinteger
is_inactiveboolean
last_checkinteger
last_updatedstring
max_query_depthinteger
meta_dataobject nullable
oauth_client_idstring
oauth_keysobject nullable
org_idstring
pernumber double
post_expiry_action'retain' | 'delete'

Defines the action to take on a Session in Redis after it expires. Valid values are "retain" and "delete".

post_expiry_grace_periodinteger

Duration in seconds to retain a Session in Redis after it expires. Used with post_expiry_action "retain". Set to -1 to retain indefinitely.

quota_maxinteger
quota_remaininginteger
quota_renewal_rateinteger
quota_renewsinteger
ratenumber double
rsa_certificate_idstring
session_lifetimeinteger
tagsstring[] nullable
throttle_intervalnumber double
throttle_retry_limitinteger

Example request

{
  "alias": "portal-developer@example.org",
  "allowance": 1000,
  "apply_policies": [
    "641c15dd0fffb800010197bf"
  ],
  "apply_policy_id": "641c15dd0fffb800010197bf",
  "date_created": "2024-03-13T03:56:46.568042549Z",
  "enable_detailed_recording": true,
  "expires": 1712895619,
  "last_updated": "1710302206",
  "max_query_depth": -1,
  "meta_data": {
    "tyk_developer_id": "62b3fb9a1d5e4f00017226f5"
  },
  "monitor": {
    "trigger_limits": [
      80,
      60,
      50
    ]
  },
  "org_id": "5e9d9544a1dcd60001d0ed20",
  "per": 5,
  "post_expiry_action": "delete",
  "quota_max": 20000,
  "quota_remaining": 20000,
  "quota_renewal_rate": 31556952,
  "quota_renews": 1710302205,
  "rate": 1,
  "tags": [
    "edge",
    "edge-eu"
  ],
  "throttle_interval": 10,
  "throttle_retry_limit": 1000
}

Response

New custom key added.

actionstring
keystring
key_hashstring
statusstring

Example response

{
  "action": "modified",
  "key": "b13d928b9972bd18",
  "status": "ok"
}