openapi: 3.0.1 info: title: Truv Admin Users API description: Truv provides consumer-permissioned access to payroll, income, and employment data. This specification covers the Truv REST API for managing users, minting bridge tokens, working with links, and retrieving employment, income, pay statement, direct deposit, insurance, identity, and banking data, plus orders, tasks, and webhooks. termsOfService: https://truv.com/terms-of-service/ contact: name: Truv Support email: support@truv.com url: https://docs.truv.com version: '1.0' servers: - url: https://prod.truv.com description: Truv production API security: - accessClientId: [] accessSecret: [] tags: - name: Users description: Manage the end users (consumers) whose data is connected through Truv. paths: /v1/users/: post: operationId: createUser tags: - Users summary: Create a user. requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/UserRequest' responses: '201': description: User created. content: application/json: schema: $ref: '#/components/schemas/User' get: operationId: listUsers tags: - Users summary: List users. responses: '200': description: A list of users. content: application/json: schema: type: array items: $ref: '#/components/schemas/User' /v1/users/{user_id}/: parameters: - $ref: '#/components/parameters/UserId' get: operationId: getUser tags: - Users summary: Retrieve a user. responses: '200': description: A user object. content: application/json: schema: $ref: '#/components/schemas/User' patch: operationId: updateUser tags: - Users summary: Update a user. requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/UserRequest' responses: '200': description: Updated user. content: application/json: schema: $ref: '#/components/schemas/User' delete: operationId: deleteUser tags: - Users summary: Delete a user. responses: '204': description: User deleted. components: parameters: UserId: name: user_id in: path required: true schema: type: string description: The ID of the user. schemas: UserRequest: type: object properties: external_user_id: type: string first_name: type: string last_name: type: string email: type: string phone: type: string User: type: object properties: id: type: string description: Unique identifier for the user. external_user_id: type: string description: Your own identifier for the user. first_name: type: string last_name: type: string email: type: string phone: type: string created_at: type: string format: date-time securitySchemes: accessClientId: type: apiKey in: header name: X-Access-Client-Id description: Your Truv access client ID. accessSecret: type: apiKey in: header name: X-Access-Secret description: Your Truv access secret.