openapi: 3.0.1 info: title: IDnow Gateway API description: >- Specification of the IDnow identity-verification gateway API. Companies authenticate against the gateway, create and drive identification orders (AutoIdent automated and VideoIdent human-assisted), retrieve results and captured documents, and subscribe to status-change webhooks. Endpoints and payloads documented here are derived from IDnow's public developer documentation; consult the IDnow Developer Hub for the authoritative, complete reference and request/response schemas. termsOfService: https://www.idnow.io/terms-conditions/ contact: name: IDnow Support url: https://www.idnow.io/developers/ version: '1.0' servers: - url: https://gateway.idnow.de/api/v1 description: Production gateway - url: https://gateway.test.idnow.de/api/v1 description: Test gateway paths: /{company}/login: post: operationId: login tags: - Authentication summary: Authenticate a company and obtain a login token. description: >- Authenticates a company using its API key and returns a JSON Web Token (authToken) that must be sent as the X-API-LOGIN-TOKEN header on subsequent requests. parameters: - name: company in: path required: true description: The company identifier issued by IDnow. schema: type: string requestBody: required: true content: application/json: schema: type: object properties: apiKey: type: string description: The company API key. responses: '200': description: Authentication succeeded; returns the login token. content: application/json: schema: type: object properties: authToken: type: string description: JWT to be used as the X-API-LOGIN-TOKEN header. /{company}/identifications/{transactionId}/create: post: operationId: createIdentification tags: - Identifications summary: Create an identification for a transaction. description: >- Creates an identification resource for the given transaction within the company. Used for both AutoIdent and VideoIdent flows depending on the configured product. parameters: - name: company in: path required: true schema: type: string - name: transactionId in: path required: true description: Caller-supplied unique transaction reference. schema: type: string responses: '200': description: Identification created. /{company}/identifications/{transactionId}/start: post: operationId: startIdentification tags: - Identifications summary: Start a previously created identification. parameters: - name: company in: path required: true schema: type: string - name: transactionId in: path required: true schema: type: string responses: '200': description: Identification started. /{company}/identifications/{transactionId}/requestVideoChat: post: operationId: requestVideoChat tags: - VideoIdent summary: Request the video-chat step for an identification. description: >- Places the identification into the VideoIdent queue so an IDnow Ident Specialist can guide the user through video verification. parameters: - name: company in: path required: true schema: type: string - name: transactionId in: path required: true schema: type: string responses: '200': description: Video chat requested. /{company}/identifications/{transactionId}: get: operationId: getIdentification tags: - Results summary: Retrieve the result of an identification. description: >- Returns the current state and result data for an identification as JSON. Once the identification has finished, the captured ID-document and face images can be requested via the include flag. parameters: - name: company in: path required: true schema: type: string - name: transactionId in: path required: true schema: type: string - name: include_documents in: query required: false description: When true, includes captured document and face images. schema: type: boolean responses: '200': description: Identification result. content: application/json: schema: type: object components: securitySchemes: LoginToken: type: apiKey in: header name: X-API-LOGIN-TOKEN description: >- JWT returned by the login endpoint, sent on every authenticated request. security: - LoginToken: []