openapi: 3.2.0 info: title: Vault Entities API version: 1.35.0 x-logo: url: https://www.ledger.com/wp-content/themes/ledger-v2/public/images/ledger-logo-long.svg description: ' # Authentication The Ledger Vault API offers several methods of authentication. Depending on your LAM configuration you''ll require several of the following headers to process API calls. Please refer to the [help center](https://help.vault.ledger.com/Content/api/api_overview.html) for more details. The `X-Ledger-API-User` header is required for all API calls to LAM (except when you register [API users on LAM](https://help.vault.ledger.com/Content/api/api_apiusers.html)). Note that the `X-Ledger-API-Key` authorization header can be used alongside the `X-Ledger-Store-Auth-Token` if both a LAM API key and HashiCorp Vault have been set up on your LAM. In this case, for every call made to LAM, you''ll need to pass all three headers `X-Ledger-API-User`, `X-Ledger-API-Key`, and `X-Ledger-Store-Auth-Token`. ' security: - Ledger_API_User: [] - Ledger_API_User: [] Ledger_API_Key: [] - Ledger_API_User: [] Ledger_Store_Auth_Token: [] - Ledger_API_User: [] Ledger_API_Key: [] Ledger_Store_Auth_Token: [] tags: - name: Entities paths: /entities: get: summary: Search Entity tags: - Entities description: Use the following parameters to search entities. parameters: - name: account in: query description: Filters by account tied to this entity required: false explode: true schema: default: null items: type: integer type: - array - 'null' style: form - name: created_after in: query description: Returns objects created after the entered date. required: false schema: default: null example: '2020-09-12T14:15:22Z' format: date-time type: - string - 'null' - name: created_before in: query description: Returns objects created before the entered date. required: false schema: default: null example: '2020-12-13T16:17:28Z' format: date-time type: - string - 'null' - name: id in: query description: Returns the object corresponding to the entered ID required: false schema: default: null type: - integer - 'null' - name: name in: query description: Filters the list by entity name. required: false schema: default: null example: trading_entity_1 type: - string - 'null' - name: order in: query description: Orders the list of results required: false schema: default: null enum: - null - asc - desc example: desc type: - string - 'null' - name: order_by in: query description: criteria to order by required: false schema: default: null example: name type: - string - 'null' - name: page in: query description: Defines the page number to be fetched. required: false schema: default: 1 example: 3 minimum: 1 type: - integer - 'null' - name: page_size in: query description: "Defines the number of elements displayed on a page.\n Must be a positive number with 0 and -1 return a maximum defined in the gate" required: false schema: default: 20 example: 40 minimum: -1 type: - integer - 'null' - name: status in: query description: Returns objects that match the selected status. required: false explode: true schema: default: null items: enum: - ACTIVE - PENDING - REJECTED - REVOKED type: string type: - array - 'null' style: form responses: '200': content: application/json: schema: $ref: '#/components/schemas/_APISearchEntitiesResults' description: entity search results '400': content: application/json: schema: $ref: '#/components/schemas/Error' description: invalid search parameters /entities/{entity_id}: get: summary: Get an entity by ID tags: - Entities description: This method returns the entity that matches the entered ID. parameters: - name: entity_id in: path description: The entity's ID required: true schema: type: integer responses: '200': content: application/json: schema: $ref: '#/components/schemas/Entity' description: entity object '404': content: application/json: schema: $ref: '#/components/schemas/Error' description: entity not found /entities/{entity_id}/history: get: summary: Get the entity's history tags: - Entities description: This method returns the entity's history. parameters: - name: entity_id in: path description: entity's id required: true schema: type: integer responses: '200': content: application/json: schema: $ref: '#/components/schemas/APIHistoryResults' description: entity history '404': content: application/json: schema: $ref: '#/components/schemas/Error' description: entity not found /entities/{entity_id}/users: get: summary: Get users of an entity tags: - Entities description: This method returns the users of a specific entity. To be listed, a user must be an operator of at least one account in the entity. parameters: - name: entity_id in: path description: entity's id required: true schema: type: integer responses: '200': content: application/json: schema: $ref: '#/components/schemas/Users' description: list of user objects '404': content: application/json: schema: $ref: '#/components/schemas/Error' description: entity not found components: schemas: User: additionalProperties: false properties: created_by: example: 5 type: integer created_on: format: date-time type: string id: type: integer is_api: example: false type: boolean key_handle: default: null example: 7920380c812ab0b752b5f04a2561a736f136d9937af542bce149bad075ee25f60f21dad3fa9a8a88bc3fa80a360b3680bb7e1ef6179701e41f9d90fd5f6b475d type: - string - 'null' last_request: default: null example: 2 type: - integer - 'null' pub_key: default: null example: 040BAE7B34D9AB3056D575128F24B42D09705FF9CFCD860790DF8147D45888E4C8C9C19AE837298C45CBC595152EA5F43788431F6B4C0017030351C05F6C505FCA type: - string - 'null' role: example: OPERATOR oneOf: - enum: - ADMIN - ADMIN_SYSTEM - OPERATOR - SHARED_OWNER - WRAPPING_KEYS type: string - enum: - READ_ONLY_API_KEY type: string status: example: ACTIVE oneOf: - enum: - ACCESS_SUSPENDED - ACTIVE - APPROVED - PENDING_APPROVAL - PENDING_REGISTRATION - PENDING_REVOCATION - REJECTED - REVOKED type: string - enum: - ABORTED - ACTIVE - PENDING_APPROVAL - PENDING_SECRET - REVOKED - SUSPENDED type: string user_id: default: null example: 5CA88C5165CF3640 type: - string - 'null' username: example: operator1 type: string required: - created_by - created_on - id - is_api - role - status - username type: object Entity: additionalProperties: false properties: accounts: items: type: integer type: array created_by: example: 5 type: integer created_on: format: date-time type: string id: type: integer last_request: default: null example: 3 type: - integer - 'null' name: type: string status: type: string required: - accounts - created_by - created_on - id - name - status type: object APIHistoryResults: properties: history: items: items: $ref: '#/components/schemas/APIHistoryResult' type: array type: array required: - history type: object Error: properties: message: type: string name: type: string status_code: type: integer required: - message - name - status_code type: object _APISearchEntitiesResults: properties: edges: items: $ref: '#/components/schemas/EntitySearchResult' type: array page_info: $ref: '#/components/schemas/APISearchPageInfo' required: - edges - page_info type: object APIHistoryResult: properties: created_by: default: null example: 5 type: - integer - 'null' created_on: format: date-time type: string expired_at: format: date-time type: string id: example: 1 type: integer is_complete: type: boolean status: enum: - ACTIVE - APPROVED - BLOCKED - EXPIRED - PENDING_APPROVAL - PENDING_FIRST_APPROVAL - PENDING_REGISTRATION - REJECTED - SIGNED - SUBMITTED example: ACTIVE type: string type: enum: - ACTIVATE - CREATE_ACCOUNT - CREATE_ADMIN - CREATE_ADMIN_GROUP - CREATE_API_USER - CREATE_API_USER_ACCESS - CREATE_DAPPS_CONFIG - CREATE_ENTITY - CREATE_FORCED_UNPLEDGE - CREATE_GROUP - CREATE_OPERATOR - CREATE_PLEDGE_INCREMENT - CREATE_POLICY - CREATE_REPLEDGE - CREATE_TRADELINK - CREATE_TRADELINK_ASSET_MANAGER - CREATE_TRADELINK_EXCHANGE - CREATE_TRANSACTION - CREATE_WHITELIST - EDIT_ACCOUNT - EDIT_ADMIN_GROUP - EDIT_DAPPS_CONFIG - EDIT_ENTITY - EDIT_GROUP - EDIT_POLICY - EDIT_WHITELIST - MESSAGE_SIGNING - MIGRATE_ACCOUNT - MIGRATE_ADMIN - MIGRATE_GROUP - MIGRATE_OPERATOR - MIGRATE_WHITELIST - REVOKE_ENTITY - REVOKE_GROUP - REVOKE_USER - SIGN_DIGESTS - UPDATE_QUORUM example: CREATE_ACCOUNT type: string required: - created_on - expired_at - id - is_complete - status - type type: object Users: properties: users: items: $ref: '#/components/schemas/User' type: array required: - users type: object EntitySearchResult: properties: cursor: example: 0 type: integer node: $ref: '#/components/schemas/Entity' required: - cursor - node type: object APISearchPageInfo: properties: count: example: 1 type: integer has_next_page: example: false type: boolean required: - count - has_next_page type: object securitySchemes: Ledger_API_User: description: (**required**) Username of a registered API User in: header name: X-Ledger-API-User type: apiKey Ledger_API_Key: description: If you've set up your API Key when initializing your LAM, you'll need to include it as a header along with the api user header. For more details, [see step 5 of the get started documentation](https://help.vault.ledger.com/Content/api/api_getstarted.html). in: header name: X-Ledger-API-Key type: apiKey Ledger_Store_Auth_Token: description: If you've set up HashiCorp Vault as an authentication service, you'll need to pass the `X-Ledger-Store-Auth-Token` header along with the API user header. For more details see [how to set up HashiCorp Vault with the LAM](https://help.vault.ledger.com/Content/api/hashicorp_vault.html). in: header name: X-Ledger-Store-Auth-Token type: apiKey