{"items":[{"type":"link","label":"Dinie API","link":"/en-us/apis/openapi","routeSlug":"/en-us/apis/openapi","content":{"contentType":"overview","meta":{"name":"Dinie API"},"children":[{"nodeType":"container","panels":[{"title":"Download OpenAPI description","titleTranslationKey":"download.description.title","children":[{"kind":"download","label":"openapi.json","url":"/_bundle/@l10n/en-US/apis/openapi.json?download"},{"kind":"download","label":"openapi.yaml","url":"/_bundle/@l10n/en-US/apis/openapi.yaml?download"}]},{"title":"Overview","titleTranslationKey":"info.title","children":[{"kind":"externallink","title":"URL","titleTranslationKey":"info.contact.url","label":"https://docs.dinie.com","url":"https://docs.dinie.com"},{"kind":"email","title":"Dinie API Support","email":"api@dinie.com.br","label":"api@dinie.com.br","withCopyButton":true,"copyContent":"api@dinie.com.br"},{"kind":"attribute","title":"License","titleTranslationKey":"info.license","label":"Proprietary","value":"Proprietary"}]},{"title":"Languages","titleTranslationKey":"languages.title","children":[{"kind":"languages","options":[{"key":"curl","title":"curl","lang":"curl"},{"key":"python","title":"Python","lang":"Python"},{"key":"node","title":"Node.js","lang":"Node.js"},{"key":"ruby","title":"Ruby","lang":"Ruby"}]}]},{"title":"Servers","titleTranslationKey":"servers.title","children":[{"kind":"servers","servers":[{"url":"/_mock/en-us/apis/openapi","description":"Mock server","isMockServer":true},{"url":"https://api.dinie.com/api/v3","description":"Production"},{"url":"https://api-dev.dinietech.io/api/v3","description":"Sandbox"}],"mode":"default"}]}],"children":[{"nodeType":"overview-section-wrapper","children":[{"nodeType":"header","level":1,"label":"Dinie API (2026-03-01)","showPageActions":true},{"nodeType":"overview-section-wrapper","children":[{"nodeType":"markdoc","content":"Embedded credit API for Dinie partners. Enables customer registration,\ncredit offer management, loan origination, and event delivery\nvia webhooks."}],"sectionId":"/en-us/apis/openapi"}],"sectionId":"/en-us/apis/openapi"}]}]}},{"type":"group","label":"Authentication","link":"/en-us/apis/openapi/authentication","routeSlug":"/en-us/apis/openapi/authentication","items":[{"label":"Get an access token","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/en-us/apis/openapi/authentication/createtoken","routeSlug":"/en-us/apis/openapi/authentication/createtoken","metadata":{"seo":{"title":"Get an access token","description":"POST /auth/token"}},"content":{"contentType":"item","itemVariant":"httpItem","meta":{"sourceId":"createToken","name":"Get an access token","isWebhook":false,"pointer":"/paths/~1auth~1token/post","hasSamples":true},"children":[{"nodeType":"container","children":[{"nodeType":"header","level":2,"label":"Get an access token","isWebhook":false,"showPageActions":true}],"panels":[]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Request","labelTranslationKey":"request","deepLinkSuffix":"request"},{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"tag","tag":"html","attributes":{"name":"div","attrs":{"className":"endpoint-url"}},"children":[{"$$mdtype":"Node","type":"tag","tag":"html","attributes":{"name":"span","attrs":{"className":"mb mb--post"}},"children":[{"$$mdtype":"Node","type":"text","attributes":{"content":"POST"},"children":[]}]},{"$$mdtype":"Node","type":"text","attributes":{"content":" /auth/token"},"children":[]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Exchange partner credentials for an access token via OAuth2 Client Credentials"},"children":[]}]}]}]},{"nodeType":"security","requirements":[{"schemes":[{"name":"oauth2","scopes":[],"type":"oauth2","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"OAuth2 Client Credentials flow for obtaining access tokens."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Use "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"client_id"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" and "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"client_secret"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" to authenticate."},"children":[]}]}]}],"flows":{"clientCredentials":{"tokenUrl":"/api/v3/auth/token","scopes":{"kyc:read":"Read a customer's KYC state (requirements, attachments, status).","kyc:upload":"Upload a KYC attachment (document or selfie via the dedicated route).","kyc:submit":"Submit a customer's KYC bundle for review.","biometrics:create":"Mint a biometrics capture session for a customer (partner side of the handoff).","biometrics:exchange":"Exchange a biometrics bootstrap code for a scoped session token (kyc-app side of the handoff)."}}}}]}]},{"nodeType":"item-content","variant":"body","label":"Request Body","labelTranslationKey":"body","required":true,"mediaTypes":["application/x-www-form-urlencoded"],"mediaTypeSchemas":{"application/x-www-form-urlencoded":{"schemaId":"schema_0","exampleIds":["paths/~1auth~1token/post/requestBody/content/application~1x-www-form-urlencoded/example"]}},"schemaId":"schema_0","exampleIds":["paths/~1auth~1token/post/requestBody/content/application~1x-www-form-urlencoded/example"],"pointer":"/paths/~1auth~1token/post/requestBody"}],"panels":[{"children":[{"kind":"code-sample","source":{"kind":"code-sample","operationType":"http","method":"POST","path":"/auth/token","servers":[{"url":"/_mock/en-us/apis/openapi","description":"Mock server","isMockServer":true},{"url":"https://api.dinie.com/api/v3","description":"Production"},{"url":"https://api-dev.dinietech.io/api/v3","description":"Sandbox"}],"parameters":{"path":[],"query":[],"querystring":[],"header":[],"cookie":[]},"security":[{"schemes":[{"id":"oauth2","type":"oauth2","flows":{"clientCredentials":{"tokenUrl":"/api/v3/auth/token","scopes":{"kyc:read":"Read a customer's KYC state (requirements, attachments, status).","kyc:upload":"Upload a KYC attachment (document or selfie via the dedicated route).","kyc:submit":"Submit a customer's KYC bundle for review.","biometrics:create":"Mint a biometrics capture session for a customer (partner side of the handoff).","biometrics:exchange":"Exchange a biometrics bootstrap code for a scoped session token (kyc-app side of the handoff)."}}}}],"scopes":[]}],"requestBody":{"application/x-www-form-urlencoded":{"schemaId":"schema_0","exampleIds":["paths/~1auth~1token/post/requestBody/content/application~1x-www-form-urlencoded/example"]}},"responseCodes":["200","400","401","429","500"],"pointer":"/auth/token","href":"authentication/createtoken","openApiOperationId":"createToken","summary":"Get an access token"},"definitionSamples":[{"lang":"curl","source":"curl -X POST https://api.dinie.com/api/v3/auth/token \\\n  -u \"$DINIE_CLIENT_ID:$DINIE_CLIENT_SECRET\" \\\n  -H \"Content-Type: application/x-www-form-urlencoded\" \\\n  -d \"grant_type=client_credentials\"\n"},{"lang":"Python","source":"from dinie import Dinie\n\n# The SDK handles token exchange automatically.\n# Just initialize with your credentials:\nclient = Dinie(\n    client_id=\"dinie_ci_abc123\",\n    client_secret=\"dinie_cs_live_xyz789\"\n)\n\n# To obtain a token manually (rarely needed):\ntoken = client.auth.create_token()\n\nprint(token.access_token)  # \"dinie_at_eyJhbG...\"\nprint(token.expires_in)    # 3600\n"},{"lang":"Node.js","source":"const { Dinie } = require(\"dinie\");\n\n// The SDK handles token exchange automatically.\n// Just initialize with your credentials:\nconst client = new Dinie({\n  clientId: \"dinie_ci_abc123\",\n  clientSecret: \"dinie_cs_live_xyz789\",\n});\n\n// To obtain a token manually (rarely needed):\nconst token = await client.auth.createToken();\n\nconsole.log(token.accessToken);  // \"dinie_at_eyJhbG...\"\nconsole.log(token.expiresIn);    // 3600\n"},{"lang":"Ruby","source":"require \"dinie\"\n\n# The SDK handles token exchange automatically.\n# Just initialize with your credentials:\nclient = Dinie::Client.new(\n  client_id: \"dinie_ci_abc123\",\n  client_secret: \"dinie_cs_live_xyz789\"\n)\n\n# To obtain a token manually (rarely needed):\ntoken = client.auth.create_token\n\nputs token.access_token  # \"dinie_at_eyJhbG...\"\nputs token.expires_in    # 3600\n"}],"isWebhook":false,"hideReplay":false,"servers":[{"url":"/_mock/en-us/apis/openapi","description":"Mock server","isMockServer":true},{"url":"https://api.dinie.com/api/v3","description":"Production"},{"url":"https://api-dev.dinietech.io/api/v3","description":"Sandbox"}],"schemaId":"schema_0","exampleIds":["paths/~1auth~1token/post/requestBody/content/application~1x-www-form-urlencoded/example"],"mediaTypes":["application/x-www-form-urlencoded"],"mediaTypeSchemas":{"application/x-www-form-urlencoded":{"schemaId":"schema_0","exampleIds":["paths/~1auth~1token/post/requestBody/content/application~1x-www-form-urlencoded/example"]}},"examples":[{}]}]}]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Responses","labelTranslationKey":"responses","deepLinkSuffix":"responses"},{"nodeType":"item-content","variant":"responses","responses":[{"code":"200","description":"Token issued successfully","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/TokenResponse","exampleIds":["paths/~1auth~1token/post/responses/200/content/application~1json/example"]}},"schemaId":"components/schemas/TokenResponse","exampleIds":["paths/~1auth~1token/post/responses/200/content/application~1json/example"]},{"code":"400","description":"Bad request","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_1","exampleIds":["paths/~1auth~1token/post/responses/400/content/application~1problem+json/examples/missing_grant_type","paths/~1auth~1token/post/responses/400/content/application~1problem+json/examples/unsupported_grant_type","paths/~1auth~1token/post/responses/400/content/application~1problem+json/examples/invalid_content_type"]}},"schemaId":"schema_1","exampleIds":["paths/~1auth~1token/post/responses/400/content/application~1problem+json/examples/missing_grant_type","paths/~1auth~1token/post/responses/400/content/application~1problem+json/examples/unsupported_grant_type","paths/~1auth~1token/post/responses/400/content/application~1problem+json/examples/invalid_content_type"]},{"code":"401","description":"Authentication failed","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_2","exampleIds":["paths/~1auth~1token/post/responses/401/content/application~1problem+json/examples/missing_authorization","paths/~1auth~1token/post/responses/401/content/application~1problem+json/examples/invalid_client","paths/~1auth~1token/post/responses/401/content/application~1problem+json/examples/invalid_client_secret","paths/~1auth~1token/post/responses/401/content/application~1problem+json/examples/credential_revoked","paths/~1auth~1token/post/responses/401/content/application~1problem+json/examples/credential_expired"]}},"schemaId":"schema_2","exampleIds":["paths/~1auth~1token/post/responses/401/content/application~1problem+json/examples/missing_authorization","paths/~1auth~1token/post/responses/401/content/application~1problem+json/examples/invalid_client","paths/~1auth~1token/post/responses/401/content/application~1problem+json/examples/invalid_client_secret","paths/~1auth~1token/post/responses/401/content/application~1problem+json/examples/credential_revoked","paths/~1auth~1token/post/responses/401/content/application~1problem+json/examples/credential_expired"]},{"code":"429","description":"Rate limit exceeded","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_3","exampleIds":["paths/~1auth~1token/post/responses/429/content/application~1problem+json/example"]}},"schemaId":"schema_3","exampleIds":["paths/~1auth~1token/post/responses/429/content/application~1problem+json/example"],"headers":{"Retry-After":{"schema":{"type":"integer"},"description":"Seconds until the rate limit resets"}},"headerSchemaId":"schema_4"},{"code":"500","description":"Internal server error","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_5","exampleIds":["paths/~1auth~1token/post/responses/500/content/application~1problem+json/example"]}},"schemaId":"schema_5","exampleIds":["paths/~1auth~1token/post/responses/500/content/application~1problem+json/example"]}],"pointer":"/paths/~1auth~1token/post/responses"}],"panels":[{"children":[{"kind":"response","responseCodes":[{"code":"200","schemaId":"components/schemas/TokenResponse","exampleIds":["paths/~1auth~1token/post/responses/200/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/TokenResponse","exampleIds":["paths/~1auth~1token/post/responses/200/content/application~1json/example"]}}},{"code":"400","schemaId":"schema_1","exampleIds":["paths/~1auth~1token/post/responses/400/content/application~1problem+json/examples/missing_grant_type","paths/~1auth~1token/post/responses/400/content/application~1problem+json/examples/unsupported_grant_type","paths/~1auth~1token/post/responses/400/content/application~1problem+json/examples/invalid_content_type"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_1","exampleIds":["paths/~1auth~1token/post/responses/400/content/application~1problem+json/examples/missing_grant_type","paths/~1auth~1token/post/responses/400/content/application~1problem+json/examples/unsupported_grant_type","paths/~1auth~1token/post/responses/400/content/application~1problem+json/examples/invalid_content_type"]}}},{"code":"401","schemaId":"schema_2","exampleIds":["paths/~1auth~1token/post/responses/401/content/application~1problem+json/examples/missing_authorization","paths/~1auth~1token/post/responses/401/content/application~1problem+json/examples/invalid_client","paths/~1auth~1token/post/responses/401/content/application~1problem+json/examples/invalid_client_secret","paths/~1auth~1token/post/responses/401/content/application~1problem+json/examples/credential_revoked","paths/~1auth~1token/post/responses/401/content/application~1problem+json/examples/credential_expired"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_2","exampleIds":["paths/~1auth~1token/post/responses/401/content/application~1problem+json/examples/missing_authorization","paths/~1auth~1token/post/responses/401/content/application~1problem+json/examples/invalid_client","paths/~1auth~1token/post/responses/401/content/application~1problem+json/examples/invalid_client_secret","paths/~1auth~1token/post/responses/401/content/application~1problem+json/examples/credential_revoked","paths/~1auth~1token/post/responses/401/content/application~1problem+json/examples/credential_expired"]}}},{"code":"429","schemaId":"schema_3","exampleIds":["paths/~1auth~1token/post/responses/429/content/application~1problem+json/example"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_3","exampleIds":["paths/~1auth~1token/post/responses/429/content/application~1problem+json/example"]}}},{"code":"500","schemaId":"schema_5","exampleIds":["paths/~1auth~1token/post/responses/500/content/application~1problem+json/example"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_5","exampleIds":["paths/~1auth~1token/post/responses/500/content/application~1problem+json/example"]}}}],"examples":[]}]}]}]},"httpPath":"/auth/token"},{"label":"Create an API key","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/en-us/apis/openapi/authentication/createcredential","routeSlug":"/en-us/apis/openapi/authentication/createcredential","metadata":{"seo":{"title":"Create an API key","description":"POST /auth/credentials"}},"content":{"contentType":"item","itemVariant":"httpItem","meta":{"sourceId":"createCredential","name":"Create an API key","isWebhook":false,"pointer":"/paths/~1auth~1credentials/post","hasSamples":true},"children":[{"nodeType":"container","children":[{"nodeType":"header","level":2,"label":"Create an API key","isWebhook":false,"showPageActions":true}],"panels":[]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Request","labelTranslationKey":"request","deepLinkSuffix":"request"},{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"tag","tag":"html","attributes":{"name":"div","attrs":{"className":"endpoint-url"}},"children":[{"$$mdtype":"Node","type":"tag","tag":"html","attributes":{"name":"span","attrs":{"className":"mb mb--post"}},"children":[{"$$mdtype":"Node","type":"text","attributes":{"content":"POST"},"children":[]}]},{"$$mdtype":"Node","type":"text","attributes":{"content":" /auth/credentials"},"children":[]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Create a new API credential pair"},"children":[]}]}]}]},{"nodeType":"security","requirements":[{"schemes":[{"name":"bearerAuth","scopes":[],"type":"http","scheme":"bearer","bearerFormat":"JWT","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"JWT token obtained via OAuth2 Client Credentials. Send "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"POST /auth/token"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"with your credentials ("},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"client_id"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" and "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"client_secret"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":") in the"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Authorization: Basic base64(client_id:client_secret)"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" header to receive an"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"access token. Include the token in all requests:"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Authorization: Bearer <token>"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":". The token expires in 1 hour (3600s)."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Prefixes: "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"dinie_cs_live_"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" (production), "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"dinie_cs_test_"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" (sandbox)."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The returned token is prefixed with "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"dinie_at_"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]}]}]}]},{"nodeType":"item-content","variant":"headers","label":"Headers","labelTranslationKey":"header","parameters":[{"name":"X-Idempotency-Key","in":"header","schemaId":"schema_6","description":"Unique string for idempotent POST requests. Cached for 24 hours."}],"pointer":"/paths/~1auth~1credentials/post/parameters"},{"nodeType":"item-content","variant":"body","label":"Request Body","labelTranslationKey":"body","required":true,"mediaTypes":["application/json"],"mediaTypeSchemas":{"application/json":{"schemaId":"components/schemas/CreateCredentialRequest","exampleIds":["paths/~1auth~1credentials/post/requestBody/content/application~1json/example"]}},"schemaId":"components/schemas/CreateCredentialRequest","exampleIds":["paths/~1auth~1credentials/post/requestBody/content/application~1json/example"],"pointer":"/paths/~1auth~1credentials/post/requestBody"}],"panels":[{"children":[{"kind":"code-sample","source":{"kind":"code-sample","operationType":"http","method":"POST","path":"/auth/credentials","servers":[{"url":"/_mock/en-us/apis/openapi","description":"Mock server","isMockServer":true},{"url":"https://api.dinie.com/api/v3","description":"Production"},{"url":"https://api-dev.dinietech.io/api/v3","description":"Sandbox"}],"parameters":{"path":[],"query":[],"querystring":[],"header":[{"name":"X-Idempotency-Key","in":"header","required":false,"schemaId":"schema_6"}],"cookie":[]},"security":[{"schemes":[{"id":"bearerAuth","type":"http","scheme":"bearer","bearerFormat":"JWT"}],"scopes":[]}],"requestBody":{"application/json":{"schemaId":"components/schemas/CreateCredentialRequest","exampleIds":["paths/~1auth~1credentials/post/requestBody/content/application~1json/example"]}},"responseCodes":["201","400","401","422","429","500"],"pointer":"/auth/credentials","href":"authentication/createcredential","openApiOperationId":"createCredential","summary":"Create an API key"},"definitionSamples":[{"lang":"curl","source":"curl -X POST https://api.dinie.com/api/v3/auth/credentials \\\n  -H \"Authorization: Bearer $DINIE_API_TOKEN\" \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\n    \"name\": \"Chave de Produção\",\n    \"expires_at\": 1803945600\n  }'\n"},{"lang":"Python","source":"from dinie import Dinie\n\nclient = Dinie(\n    client_id=\"dinie_ci_abc123\",\n    client_secret=\"dinie_cs_live_xyz789\"\n)\n\n# Create a new API credential\ncredential = client.auth.create_credential(\n    name=\"Chave de Produção\",\n    expires_at=1803945600\n)\n\nprint(credential.client_id)      # \"dinie_ci_550e8400...\"\nprint(credential.client_secret)   # \"dinie_cs_live_a1b2c3...\"\n# ⚠️ Store the client_secret securely -- shown only once!\n"},{"lang":"Node.js","source":"const { Dinie } = require(\"dinie\");\n\nconst client = new Dinie({\n  clientId: \"dinie_ci_abc123\",\n  clientSecret: \"dinie_cs_live_xyz789\",\n});\n\n// Create a new API credential\nconst credential = await client.auth.createCredential({\n  name: \"Chave de Produção\",\n  expiresAt: 1803945600,\n});\n\nconsole.log(credential.clientId);      // \"dinie_ci_550e8400...\"\nconsole.log(credential.clientSecret);   // \"dinie_cs_live_a1b2c3...\"\n// Store the clientSecret securely -- shown only once!\n"},{"lang":"Ruby","source":"require \"dinie\"\n\nclient = Dinie::Client.new(\n  client_id: \"dinie_ci_abc123\",\n  client_secret: \"dinie_cs_live_xyz789\"\n)\n\n# Create a new API credential\ncredential = client.auth.create_credential(\n  name: \"Chave de Produção\",\n  expires_at: 1803945600\n)\n\nputs credential.client_id      # \"dinie_ci_550e8400...\"\nputs credential.client_secret   # \"dinie_cs_live_a1b2c3...\"\n# Store the client_secret securely -- shown only once!\n"}],"isWebhook":false,"hideReplay":false,"servers":[{"url":"/_mock/en-us/apis/openapi","description":"Mock server","isMockServer":true},{"url":"https://api.dinie.com/api/v3","description":"Production"},{"url":"https://api-dev.dinietech.io/api/v3","description":"Sandbox"}],"schemaId":"components/schemas/CreateCredentialRequest","exampleIds":["paths/~1auth~1credentials/post/requestBody/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeSchemas":{"application/json":{"schemaId":"components/schemas/CreateCredentialRequest","exampleIds":["paths/~1auth~1credentials/post/requestBody/content/application~1json/example"]}},"examples":[{}]}]}]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Responses","labelTranslationKey":"responses","deepLinkSuffix":"responses"},{"nodeType":"item-content","variant":"responses","responses":[{"code":"201","description":"Credential created","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/CredentialWithSecret","exampleIds":["paths/~1auth~1credentials/post/responses/201/content/application~1json/example"]}},"schemaId":"components/schemas/CredentialWithSecret","exampleIds":["paths/~1auth~1credentials/post/responses/201/content/application~1json/example"]},{"code":"400","description":"Bad request","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_7","exampleIds":["paths/~1auth~1credentials/post/responses/400/content/application~1problem+json/examples/invalid_content_type","paths/~1auth~1credentials/post/responses/400/content/application~1problem+json/examples/malformed_body"]}},"schemaId":"schema_7","exampleIds":["paths/~1auth~1credentials/post/responses/400/content/application~1problem+json/examples/invalid_content_type","paths/~1auth~1credentials/post/responses/400/content/application~1problem+json/examples/malformed_body"]},{"code":"401","description":"Authentication failed","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_8","exampleIds":["paths/~1auth~1credentials/post/responses/401/content/application~1problem+json/examples/missing_token","paths/~1auth~1credentials/post/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1auth~1credentials/post/responses/401/content/application~1problem+json/examples/token_expired"]}},"schemaId":"schema_8","exampleIds":["paths/~1auth~1credentials/post/responses/401/content/application~1problem+json/examples/missing_token","paths/~1auth~1credentials/post/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1auth~1credentials/post/responses/401/content/application~1problem+json/examples/token_expired"]},{"code":"422","description":"Validation failed","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_9","exampleIds":["paths/~1auth~1credentials/post/responses/422/content/application~1problem+json/examples/missing_required_field"]}},"schemaId":"schema_9","exampleIds":["paths/~1auth~1credentials/post/responses/422/content/application~1problem+json/examples/missing_required_field"]},{"code":"429","description":"Rate limit exceeded","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_3","exampleIds":["paths/~1auth~1credentials/post/responses/429/content/application~1problem+json/example"]}},"schemaId":"schema_3","exampleIds":["paths/~1auth~1credentials/post/responses/429/content/application~1problem+json/example"],"headers":{"Retry-After":{"schema":{"type":"integer"},"description":"Seconds until the rate limit resets"}},"headerSchemaId":"schema_4"},{"code":"500","description":"Internal server error","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_5","exampleIds":["paths/~1auth~1credentials/post/responses/500/content/application~1problem+json/example"]}},"schemaId":"schema_5","exampleIds":["paths/~1auth~1credentials/post/responses/500/content/application~1problem+json/example"]}],"pointer":"/paths/~1auth~1credentials/post/responses"}],"panels":[{"children":[{"kind":"response","responseCodes":[{"code":"201","schemaId":"components/schemas/CredentialWithSecret","exampleIds":["paths/~1auth~1credentials/post/responses/201/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/CredentialWithSecret","exampleIds":["paths/~1auth~1credentials/post/responses/201/content/application~1json/example"]}}},{"code":"400","schemaId":"schema_7","exampleIds":["paths/~1auth~1credentials/post/responses/400/content/application~1problem+json/examples/invalid_content_type","paths/~1auth~1credentials/post/responses/400/content/application~1problem+json/examples/malformed_body"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_7","exampleIds":["paths/~1auth~1credentials/post/responses/400/content/application~1problem+json/examples/invalid_content_type","paths/~1auth~1credentials/post/responses/400/content/application~1problem+json/examples/malformed_body"]}}},{"code":"401","schemaId":"schema_8","exampleIds":["paths/~1auth~1credentials/post/responses/401/content/application~1problem+json/examples/missing_token","paths/~1auth~1credentials/post/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1auth~1credentials/post/responses/401/content/application~1problem+json/examples/token_expired"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_8","exampleIds":["paths/~1auth~1credentials/post/responses/401/content/application~1problem+json/examples/missing_token","paths/~1auth~1credentials/post/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1auth~1credentials/post/responses/401/content/application~1problem+json/examples/token_expired"]}}},{"code":"422","schemaId":"schema_9","exampleIds":["paths/~1auth~1credentials/post/responses/422/content/application~1problem+json/examples/missing_required_field"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_9","exampleIds":["paths/~1auth~1credentials/post/responses/422/content/application~1problem+json/examples/missing_required_field"]}}},{"code":"429","schemaId":"schema_3","exampleIds":["paths/~1auth~1credentials/post/responses/429/content/application~1problem+json/example"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_3","exampleIds":["paths/~1auth~1credentials/post/responses/429/content/application~1problem+json/example"]}}},{"code":"500","schemaId":"schema_5","exampleIds":["paths/~1auth~1credentials/post/responses/500/content/application~1problem+json/example"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_5","exampleIds":["paths/~1auth~1credentials/post/responses/500/content/application~1problem+json/example"]}}}],"examples":[]}]}]}]},"httpPath":"/auth/credentials"},{"label":"List API keys","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/en-us/apis/openapi/authentication/listcredentials","routeSlug":"/en-us/apis/openapi/authentication/listcredentials","metadata":{"seo":{"title":"List API keys","description":"GET /auth/credentials"}},"content":{"contentType":"item","itemVariant":"httpItem","meta":{"sourceId":"listCredentials","name":"List API keys","isWebhook":false,"pointer":"/paths/~1auth~1credentials/get","hasSamples":true},"children":[{"nodeType":"container","children":[{"nodeType":"header","level":2,"label":"List API keys","isWebhook":false,"showPageActions":true}],"panels":[]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Request","labelTranslationKey":"request","deepLinkSuffix":"request"},{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"tag","tag":"html","attributes":{"name":"div","attrs":{"className":"endpoint-url"}},"children":[{"$$mdtype":"Node","type":"tag","tag":"html","attributes":{"name":"span","attrs":{"className":"mb mb--get"}},"children":[{"$$mdtype":"Node","type":"text","attributes":{"content":"GET"},"children":[]}]},{"$$mdtype":"Node","type":"text","attributes":{"content":" /auth/credentials"},"children":[]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"List all API keys"},"children":[]}]}]}]},{"nodeType":"security","requirements":[{"schemes":[{"name":"bearerAuth","scopes":[],"type":"http","scheme":"bearer","bearerFormat":"JWT","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"JWT token obtained via OAuth2 Client Credentials. Send "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"POST /auth/token"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"with your credentials ("},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"client_id"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" and "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"client_secret"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":") in the"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Authorization: Basic base64(client_id:client_secret)"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" header to receive an"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"access token. Include the token in all requests:"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Authorization: Bearer <token>"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":". The token expires in 1 hour (3600s)."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Prefixes: "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"dinie_cs_live_"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" (production), "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"dinie_cs_test_"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" (sandbox)."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The returned token is prefixed with "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"dinie_at_"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]}]}]}]}],"panels":[{"children":[{"kind":"code-sample","source":{"kind":"code-sample","operationType":"http","method":"GET","path":"/auth/credentials","servers":[{"url":"/_mock/en-us/apis/openapi","description":"Mock server","isMockServer":true},{"url":"https://api.dinie.com/api/v3","description":"Production"},{"url":"https://api-dev.dinietech.io/api/v3","description":"Sandbox"}],"parameters":{"path":[],"query":[],"querystring":[],"header":[],"cookie":[]},"security":[{"schemes":[{"id":"bearerAuth","type":"http","scheme":"bearer","bearerFormat":"JWT"}],"scopes":[]}],"responseCodes":["200","401","429","500"],"pointer":"/auth/credentials","href":"authentication/listcredentials","openApiOperationId":"listCredentials","summary":"List API keys"},"definitionSamples":[{"lang":"curl","source":"curl https://api.dinie.com/api/v3/auth/credentials \\\n  -H \"Authorization: Bearer $DINIE_API_TOKEN\"\n"},{"lang":"Python","source":"from dinie import Dinie\n\nclient = Dinie(\n    client_id=\"dinie_ci_abc123\",\n    client_secret=\"dinie_cs_live_xyz789\"\n)\n\n# List all API credentials\ncredentials = client.auth.list_credentials()\n\nfor cred in credentials.data:\n    print(f\"{cred.name}: {cred.status}\")\n    # \"Chave de Produção: active\"\n"},{"lang":"Node.js","source":"const { Dinie } = require(\"dinie\");\n\nconst client = new Dinie({\n  clientId: \"dinie_ci_abc123\",\n  clientSecret: \"dinie_cs_live_xyz789\",\n});\n\n// List all API credentials\nconst credentials = await client.auth.listCredentials();\n\nfor (const cred of credentials.data) {\n  console.log(`${cred.name}: ${cred.status}`);\n  // \"Chave de Produção: active\"\n}\n"},{"lang":"Ruby","source":"require \"dinie\"\n\nclient = Dinie::Client.new(\n  client_id: \"dinie_ci_abc123\",\n  client_secret: \"dinie_cs_live_xyz789\"\n)\n\n# List all API credentials\ncredentials = client.auth.list_credentials\n\ncredentials.data.each do |cred|\n  puts \"#{cred.name}: #{cred.status}\"\n  # \"Chave de Produção: active\"\nend\n"}],"isWebhook":false,"hideReplay":false,"servers":[{"url":"/_mock/en-us/apis/openapi","description":"Mock server","isMockServer":true},{"url":"https://api.dinie.com/api/v3","description":"Production"},{"url":"https://api-dev.dinietech.io/api/v3","description":"Sandbox"}],"examples":[]}]}]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Responses","labelTranslationKey":"responses","deepLinkSuffix":"responses"},{"nodeType":"item-content","variant":"responses","responses":[{"code":"200","description":"List of credentials","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_10","exampleIds":["paths/~1auth~1credentials/get/responses/200/content/application~1json/example"]}},"schemaId":"schema_10","exampleIds":["paths/~1auth~1credentials/get/responses/200/content/application~1json/example"]},{"code":"401","description":"Authentication failed","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_8","exampleIds":["paths/~1auth~1credentials/get/responses/401/content/application~1problem+json/examples/missing_token","paths/~1auth~1credentials/get/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1auth~1credentials/get/responses/401/content/application~1problem+json/examples/token_expired"]}},"schemaId":"schema_8","exampleIds":["paths/~1auth~1credentials/get/responses/401/content/application~1problem+json/examples/missing_token","paths/~1auth~1credentials/get/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1auth~1credentials/get/responses/401/content/application~1problem+json/examples/token_expired"]},{"code":"429","description":"Rate limit exceeded","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_3","exampleIds":["paths/~1auth~1credentials/get/responses/429/content/application~1problem+json/example"]}},"schemaId":"schema_3","exampleIds":["paths/~1auth~1credentials/get/responses/429/content/application~1problem+json/example"],"headers":{"Retry-After":{"schema":{"type":"integer"},"description":"Seconds until the rate limit resets"}},"headerSchemaId":"schema_4"},{"code":"500","description":"Internal server error","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_5","exampleIds":["paths/~1auth~1credentials/get/responses/500/content/application~1problem+json/example"]}},"schemaId":"schema_5","exampleIds":["paths/~1auth~1credentials/get/responses/500/content/application~1problem+json/example"]}],"pointer":"/paths/~1auth~1credentials/get/responses"}],"panels":[{"children":[{"kind":"response","responseCodes":[{"code":"200","schemaId":"schema_10","exampleIds":["paths/~1auth~1credentials/get/responses/200/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_10","exampleIds":["paths/~1auth~1credentials/get/responses/200/content/application~1json/example"]}}},{"code":"401","schemaId":"schema_8","exampleIds":["paths/~1auth~1credentials/get/responses/401/content/application~1problem+json/examples/missing_token","paths/~1auth~1credentials/get/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1auth~1credentials/get/responses/401/content/application~1problem+json/examples/token_expired"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_8","exampleIds":["paths/~1auth~1credentials/get/responses/401/content/application~1problem+json/examples/missing_token","paths/~1auth~1credentials/get/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1auth~1credentials/get/responses/401/content/application~1problem+json/examples/token_expired"]}}},{"code":"429","schemaId":"schema_3","exampleIds":["paths/~1auth~1credentials/get/responses/429/content/application~1problem+json/example"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_3","exampleIds":["paths/~1auth~1credentials/get/responses/429/content/application~1problem+json/example"]}}},{"code":"500","schemaId":"schema_5","exampleIds":["paths/~1auth~1credentials/get/responses/500/content/application~1problem+json/example"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_5","exampleIds":["paths/~1auth~1credentials/get/responses/500/content/application~1problem+json/example"]}}}],"examples":[]}]}]}]},"httpPath":"/auth/credentials"},{"label":"Revoke an API key","deprecated":false,"httpVerb":"delete","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/en-us/apis/openapi/authentication/revokecredential","routeSlug":"/en-us/apis/openapi/authentication/revokecredential","metadata":{"seo":{"title":"Revoke an API key","description":"DELETE /auth/credentials/{client_id}"}},"content":{"contentType":"item","itemVariant":"httpItem","meta":{"sourceId":"revokeCredential","name":"Revoke an API key","isWebhook":false,"pointer":"/paths/~1auth~1credentials~1{client_id}/delete","hasSamples":true},"children":[{"nodeType":"container","children":[{"nodeType":"header","level":2,"label":"Revoke an API key","isWebhook":false,"showPageActions":true}],"panels":[]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Request","labelTranslationKey":"request","deepLinkSuffix":"request"},{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"tag","tag":"html","attributes":{"name":"div","attrs":{"className":"endpoint-url"}},"children":[{"$$mdtype":"Node","type":"tag","tag":"html","attributes":{"name":"span","attrs":{"className":"mb mb--del"}},"children":[{"$$mdtype":"Node","type":"text","attributes":{"content":"DELETE"},"children":[]}]},{"$$mdtype":"Node","type":"text","attributes":{"content":" /auth/credentials/{client_id}"},"children":[]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Revoke an API key immediately and permanently"},"children":[]}]}]}]},{"nodeType":"security","requirements":[{"schemes":[{"name":"bearerAuth","scopes":[],"type":"http","scheme":"bearer","bearerFormat":"JWT","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"JWT token obtained via OAuth2 Client Credentials. Send "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"POST /auth/token"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"with your credentials ("},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"client_id"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" and "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"client_secret"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":") in the"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Authorization: Basic base64(client_id:client_secret)"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" header to receive an"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"access token. Include the token in all requests:"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Authorization: Bearer <token>"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":". The token expires in 1 hour (3600s)."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Prefixes: "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"dinie_cs_live_"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" (production), "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"dinie_cs_test_"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" (sandbox)."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The returned token is prefixed with "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"dinie_at_"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]}]}]}]},{"nodeType":"item-content","variant":"path","label":"Path","labelTranslationKey":"path","parameters":[{"name":"client_id","in":"path","schemaId":"schema_11","description":"ID of the credential to revoke","required":true}],"pointer":"/paths/~1auth~1credentials~1{client_id}/delete/parameters"}],"panels":[{"children":[{"kind":"code-sample","source":{"kind":"code-sample","operationType":"http","method":"DELETE","path":"/auth/credentials/{client_id}","servers":[{"url":"/_mock/en-us/apis/openapi","description":"Mock server","isMockServer":true},{"url":"https://api.dinie.com/api/v3","description":"Production"},{"url":"https://api-dev.dinietech.io/api/v3","description":"Sandbox"}],"parameters":{"path":[{"name":"client_id","in":"path","required":true,"example":"dinie_ci_live_550e8400e29b41d4a71644","schemaId":"components/schemas/ApiClientId"}],"query":[],"querystring":[],"header":[],"cookie":[]},"security":[{"schemes":[{"id":"bearerAuth","type":"http","scheme":"bearer","bearerFormat":"JWT"}],"scopes":[]}],"responseCodes":["204","401","404","409","429","500"],"pointer":"/auth/credentials/{client_id}","href":"authentication/revokecredential","openApiOperationId":"revokeCredential","summary":"Revoke an API key"},"definitionSamples":[{"lang":"curl","source":"curl -X DELETE https://api.dinie.com/api/v3/auth/credentials/dinie_ci_live_550e8400e29b41d4a71644 \\\n  -H \"Authorization: Bearer $DINIE_API_TOKEN\"\n"},{"lang":"Python","source":"from dinie import Dinie\n\nclient = Dinie(\n    client_id=\"dinie_ci_abc123\",\n    client_secret=\"dinie_cs_live_xyz789\"\n)\n\n# Revoke a compromised credential\nclient.auth.revoke_credential(\"dinie_ci_live_550e8400e29b41d4a71644\")\n# 204 No Content -- credential revoked immediately\n"},{"lang":"Node.js","source":"const { Dinie } = require(\"dinie\");\n\nconst client = new Dinie({\n  clientId: \"dinie_ci_abc123\",\n  clientSecret: \"dinie_cs_live_xyz789\",\n});\n\n// Revoke a compromised credential\nawait client.auth.revokeCredential(\"dinie_ci_live_550e8400e29b41d4a71644\");\n// 204 No Content -- credential revoked immediately\n"},{"lang":"Ruby","source":"require \"dinie\"\n\nclient = Dinie::Client.new(\n  client_id: \"dinie_ci_abc123\",\n  client_secret: \"dinie_cs_live_xyz789\"\n)\n\n# Revoke a compromised credential\nclient.auth.revoke_credential(\"dinie_ci_live_550e8400e29b41d4a71644\")\n# 204 No Content -- credential revoked immediately\n"}],"isWebhook":false,"hideReplay":false,"servers":[{"url":"/_mock/en-us/apis/openapi","description":"Mock server","isMockServer":true},{"url":"https://api.dinie.com/api/v3","description":"Production"},{"url":"https://api-dev.dinietech.io/api/v3","description":"Sandbox"}],"examples":[]}]}]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Responses","labelTranslationKey":"responses","deepLinkSuffix":"responses"},{"nodeType":"item-content","variant":"responses","responses":[{"code":"204","description":"Credential revoked (empty body)"},{"code":"401","description":"Authentication failed","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_8","exampleIds":["paths/~1auth~1credentials~1{client_id}/delete/responses/401/content/application~1problem+json/examples/missing_token","paths/~1auth~1credentials~1{client_id}/delete/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1auth~1credentials~1{client_id}/delete/responses/401/content/application~1problem+json/examples/token_expired"]}},"schemaId":"schema_8","exampleIds":["paths/~1auth~1credentials~1{client_id}/delete/responses/401/content/application~1problem+json/examples/missing_token","paths/~1auth~1credentials~1{client_id}/delete/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1auth~1credentials~1{client_id}/delete/responses/401/content/application~1problem+json/examples/token_expired"]},{"code":"404","description":"Resource not found","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_12","exampleIds":["paths/~1auth~1credentials~1{client_id}/delete/responses/404/content/application~1problem+json/examples/credential_not_found"]}},"schemaId":"schema_12","exampleIds":["paths/~1auth~1credentials~1{client_id}/delete/responses/404/content/application~1problem+json/examples/credential_not_found"]},{"code":"409","description":"Conflict","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_13","exampleIds":["paths/~1auth~1credentials~1{client_id}/delete/responses/409/content/application~1problem+json/examples/last_active_credential"]}},"schemaId":"schema_13","exampleIds":["paths/~1auth~1credentials~1{client_id}/delete/responses/409/content/application~1problem+json/examples/last_active_credential"]},{"code":"429","description":"Rate limit exceeded","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_3","exampleIds":["paths/~1auth~1credentials~1{client_id}/delete/responses/429/content/application~1problem+json/example"]}},"schemaId":"schema_3","exampleIds":["paths/~1auth~1credentials~1{client_id}/delete/responses/429/content/application~1problem+json/example"],"headers":{"Retry-After":{"schema":{"type":"integer"},"description":"Seconds until the rate limit resets"}},"headerSchemaId":"schema_4"},{"code":"500","description":"Internal server error","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_5","exampleIds":["paths/~1auth~1credentials~1{client_id}/delete/responses/500/content/application~1problem+json/example"]}},"schemaId":"schema_5","exampleIds":["paths/~1auth~1credentials~1{client_id}/delete/responses/500/content/application~1problem+json/example"]}],"pointer":"/paths/~1auth~1credentials~1{client_id}/delete/responses"}],"panels":[{"children":[{"kind":"response","responseCodes":[{"code":"204"},{"code":"401","schemaId":"schema_8","exampleIds":["paths/~1auth~1credentials~1{client_id}/delete/responses/401/content/application~1problem+json/examples/missing_token","paths/~1auth~1credentials~1{client_id}/delete/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1auth~1credentials~1{client_id}/delete/responses/401/content/application~1problem+json/examples/token_expired"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_8","exampleIds":["paths/~1auth~1credentials~1{client_id}/delete/responses/401/content/application~1problem+json/examples/missing_token","paths/~1auth~1credentials~1{client_id}/delete/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1auth~1credentials~1{client_id}/delete/responses/401/content/application~1problem+json/examples/token_expired"]}}},{"code":"404","schemaId":"schema_12","exampleIds":["paths/~1auth~1credentials~1{client_id}/delete/responses/404/content/application~1problem+json/examples/credential_not_found"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_12","exampleIds":["paths/~1auth~1credentials~1{client_id}/delete/responses/404/content/application~1problem+json/examples/credential_not_found"]}}},{"code":"409","schemaId":"schema_13","exampleIds":["paths/~1auth~1credentials~1{client_id}/delete/responses/409/content/application~1problem+json/examples/last_active_credential"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_13","exampleIds":["paths/~1auth~1credentials~1{client_id}/delete/responses/409/content/application~1problem+json/examples/last_active_credential"]}}},{"code":"429","schemaId":"schema_3","exampleIds":["paths/~1auth~1credentials~1{client_id}/delete/responses/429/content/application~1problem+json/example"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_3","exampleIds":["paths/~1auth~1credentials~1{client_id}/delete/responses/429/content/application~1problem+json/example"]}}},{"code":"500","schemaId":"schema_5","exampleIds":["paths/~1auth~1credentials~1{client_id}/delete/responses/500/content/application~1problem+json/example"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_5","exampleIds":["paths/~1auth~1credentials~1{client_id}/delete/responses/500/content/application~1problem+json/example"]}}}],"examples":[]}]}]}]},"httpPath":"/auth/credentials/{client_id}"}],"content":{"contentType":"group","meta":{"name":"Authentication"},"children":[{"nodeType":"container","children":[{"nodeType":"header","level":2,"label":"Authentication","showPageActions":true},{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"OAuth2 Client Credentials authentication and API key management."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Exchange your credentials for a JWT token via "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"POST /auth/token"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" and send it as Bearer in all requests."},"children":[]}]}]}]}],"panels":[{"children":[{"kind":"group-items","title":"Operations","titleTranslationKey":"operations","items":[{"title":"/auth/token","summary":"Get an access token","prefix":{"name":"post","color":"post"},"badges":[],"link":"/authentication/createtoken","deprecated":false},{"title":"/auth/credentials","summary":"Create an API key","prefix":{"name":"post","color":"post"},"badges":[],"link":"/authentication/createcredential","deprecated":false},{"title":"/auth/credentials","summary":"List API keys","prefix":{"name":"get","color":"get"},"badges":[],"link":"/authentication/listcredentials","deprecated":false},{"title":"/auth/credentials/{client_id}","summary":"Revoke an API key","prefix":{"name":"delete","color":"delete"},"badges":[],"link":"/authentication/revokecredential","deprecated":false}]}]}]}]}},{"type":"group","label":"Customers","link":"/en-us/apis/openapi/customers","routeSlug":"/en-us/apis/openapi/customers","items":[{"label":"Register a customer","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/en-us/apis/openapi/customers/createcustomer","routeSlug":"/en-us/apis/openapi/customers/createcustomer","metadata":{"seo":{"title":"Register a customer","description":"POST /customers"}},"content":{"contentType":"item","itemVariant":"httpItem","meta":{"sourceId":"createCustomer","name":"Register a customer","isWebhook":false,"pointer":"/paths/~1customers/post","hasSamples":true},"children":[{"nodeType":"container","children":[{"nodeType":"header","level":2,"label":"Register a customer","isWebhook":false,"showPageActions":true}],"panels":[]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Request","labelTranslationKey":"request","deepLinkSuffix":"request"},{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"tag","tag":"html","attributes":{"name":"div","attrs":{"className":"endpoint-url"}},"children":[{"$$mdtype":"Node","type":"tag","tag":"html","attributes":{"name":"span","attrs":{"className":"mb mb--post"}},"children":[{"$$mdtype":"Node","type":"text","attributes":{"content":"POST"},"children":[]}]},{"$$mdtype":"Node","type":"text","attributes":{"content":" /customers"},"children":[]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Register a new customer"},"children":[]}]}]}]},{"nodeType":"security","requirements":[{"schemes":[{"name":"bearerAuth","scopes":[],"type":"http","scheme":"bearer","bearerFormat":"JWT","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"JWT token obtained via OAuth2 Client Credentials. Send "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"POST /auth/token"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"with your credentials ("},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"client_id"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" and "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"client_secret"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":") in the"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Authorization: Basic base64(client_id:client_secret)"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" header to receive an"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"access token. Include the token in all requests:"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Authorization: Bearer <token>"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":". The token expires in 1 hour (3600s)."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Prefixes: "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"dinie_cs_live_"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" (production), "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"dinie_cs_test_"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" (sandbox)."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The returned token is prefixed with "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"dinie_at_"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]}]}]}]},{"nodeType":"item-content","variant":"body","label":"Request Body","labelTranslationKey":"body","required":true,"mediaTypes":["application/json"],"mediaTypeSchemas":{"application/json":{"schemaId":"components/schemas/CreateCustomerRequest","exampleIds":["paths/~1customers/post/requestBody/content/application~1json/example"]}},"schemaId":"components/schemas/CreateCustomerRequest","exampleIds":["paths/~1customers/post/requestBody/content/application~1json/example"],"pointer":"/paths/~1customers/post/requestBody"}],"panels":[{"children":[{"kind":"code-sample","source":{"kind":"code-sample","operationType":"http","method":"POST","path":"/customers","servers":[{"url":"/_mock/en-us/apis/openapi","description":"Mock server","isMockServer":true},{"url":"https://api.dinie.com/api/v3","description":"Production"},{"url":"https://api-dev.dinietech.io/api/v3","description":"Sandbox"}],"parameters":{"path":[],"query":[],"querystring":[],"header":[],"cookie":[]},"security":[{"schemes":[{"id":"bearerAuth","type":"http","scheme":"bearer","bearerFormat":"JWT"}],"scopes":[]}],"requestBody":{"application/json":{"schemaId":"components/schemas/CreateCustomerRequest","exampleIds":["paths/~1customers/post/requestBody/content/application~1json/example"]}},"responseCodes":["201","400","401","409","422","429","500"],"pointer":"/customers","href":"customers/createcustomer","openApiOperationId":"createCustomer","summary":"Register a customer"},"definitionSamples":[{"lang":"curl","source":"curl -X POST https://api.dinie.com/api/v3/customers \\\n  -H \"Authorization: Bearer $DINIE_API_TOKEN\" \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\n    \"cpf\": \"123.456.789-00\",\n    \"email\": \"joao@example.com\",\n    \"phone\": \"+5511999999999\",\n    \"external_id\": \"partner-ref-123\"\n  }'\n"},{"lang":"Python","source":"from dinie import Dinie\n\nclient = Dinie(\n    client_id=\"dinie_ci_abc123\",\n    client_secret=\"dinie_cs_live_xyz789\"\n)\n\n# Create a new customer\ncustomer = client.customers.create(\n    cpf=\"123.456.789-00\",\n    email=\"joao@example.com\",\n    phone=\"+5511999999999\",\n    external_id=\"partner-ref-123\"\n)\n\nprint(customer.id)        # \"cust_550e8400...\"\nprint(customer.status)    # \"creating\"\n"},{"lang":"Node.js","source":"const { Dinie } = require(\"dinie\");\n\nconst client = new Dinie({\n  clientId: \"dinie_ci_abc123\",\n  clientSecret: \"dinie_cs_live_xyz789\",\n});\n\n// Create a new customer\nconst customer = await client.customers.create({\n  cpf: \"123.456.789-00\",\n  email: \"joao@example.com\",\n  phone: \"+5511999999999\",\n  externalId: \"partner-ref-123\",\n});\n\nconsole.log(customer.id);      // \"cust_550e8400...\"\nconsole.log(customer.status);   // \"creating\"\n"},{"lang":"Ruby","source":"require \"dinie\"\n\nclient = Dinie::Client.new(\n  client_id: \"dinie_ci_abc123\",\n  client_secret: \"dinie_cs_live_xyz789\"\n)\n\n# Create a new customer\ncustomer = client.customers.create(\n  cpf: \"123.456.789-00\",\n  email: \"joao@example.com\",\n  phone: \"+5511999999999\",\n  external_id: \"partner-ref-123\"\n)\n\nputs customer.id      # \"cust_550e8400...\"\nputs customer.status  # \"creating\"\n"}],"isWebhook":false,"hideReplay":false,"servers":[{"url":"/_mock/en-us/apis/openapi","description":"Mock server","isMockServer":true},{"url":"https://api.dinie.com/api/v3","description":"Production"},{"url":"https://api-dev.dinietech.io/api/v3","description":"Sandbox"}],"schemaId":"components/schemas/CreateCustomerRequest","exampleIds":["paths/~1customers/post/requestBody/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeSchemas":{"application/json":{"schemaId":"components/schemas/CreateCustomerRequest","exampleIds":["paths/~1customers/post/requestBody/content/application~1json/example"]}},"examples":[{}]}]}]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Responses","labelTranslationKey":"responses","deepLinkSuffix":"responses"},{"nodeType":"item-content","variant":"responses","responses":[{"code":"201","description":"Customer created","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/Customer","exampleIds":["paths/~1customers/post/responses/201/content/application~1json/example"]}},"schemaId":"components/schemas/Customer","exampleIds":["paths/~1customers/post/responses/201/content/application~1json/example"]},{"code":"400","description":"Bad request","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_7","exampleIds":["paths/~1customers/post/responses/400/content/application~1problem+json/examples/invalid_content_type","paths/~1customers/post/responses/400/content/application~1problem+json/examples/malformed_body"]}},"schemaId":"schema_7","exampleIds":["paths/~1customers/post/responses/400/content/application~1problem+json/examples/invalid_content_type","paths/~1customers/post/responses/400/content/application~1problem+json/examples/malformed_body"]},{"code":"401","description":"Authentication failed","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_8","exampleIds":["paths/~1customers/post/responses/401/content/application~1problem+json/examples/missing_token","paths/~1customers/post/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1customers/post/responses/401/content/application~1problem+json/examples/token_expired"]}},"schemaId":"schema_8","exampleIds":["paths/~1customers/post/responses/401/content/application~1problem+json/examples/missing_token","paths/~1customers/post/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1customers/post/responses/401/content/application~1problem+json/examples/token_expired"]},{"code":"409","description":"Conflict","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_14","exampleIds":["paths/~1customers/post/responses/409/content/application~1problem+json/examples/customer_already_exists"]}},"schemaId":"schema_14","exampleIds":["paths/~1customers/post/responses/409/content/application~1problem+json/examples/customer_already_exists"]},{"code":"422","description":"Validation failed","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_15","exampleIds":["paths/~1customers/post/responses/422/content/application~1problem+json/examples/missing_required_field","paths/~1customers/post/responses/422/content/application~1problem+json/examples/invalid_cpf","paths/~1customers/post/responses/422/content/application~1problem+json/examples/invalid_cnpj","paths/~1customers/post/responses/422/content/application~1problem+json/examples/invalid_email","paths/~1customers/post/responses/422/content/application~1problem+json/examples/invalid_phone"]}},"schemaId":"schema_15","exampleIds":["paths/~1customers/post/responses/422/content/application~1problem+json/examples/missing_required_field","paths/~1customers/post/responses/422/content/application~1problem+json/examples/invalid_cpf","paths/~1customers/post/responses/422/content/application~1problem+json/examples/invalid_cnpj","paths/~1customers/post/responses/422/content/application~1problem+json/examples/invalid_email","paths/~1customers/post/responses/422/content/application~1problem+json/examples/invalid_phone"]},{"code":"429","description":"Rate limit exceeded","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_3","exampleIds":["paths/~1customers/post/responses/429/content/application~1problem+json/example"]}},"schemaId":"schema_3","exampleIds":["paths/~1customers/post/responses/429/content/application~1problem+json/example"],"headers":{"Retry-After":{"schema":{"type":"integer"},"description":"Seconds until the rate limit resets"}},"headerSchemaId":"schema_4"},{"code":"500","description":"Internal server error","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_5","exampleIds":["paths/~1customers/post/responses/500/content/application~1problem+json/example"]}},"schemaId":"schema_5","exampleIds":["paths/~1customers/post/responses/500/content/application~1problem+json/example"]}],"pointer":"/paths/~1customers/post/responses"}],"panels":[{"children":[{"kind":"response","responseCodes":[{"code":"201","schemaId":"components/schemas/Customer","exampleIds":["paths/~1customers/post/responses/201/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/Customer","exampleIds":["paths/~1customers/post/responses/201/content/application~1json/example"]}}},{"code":"400","schemaId":"schema_7","exampleIds":["paths/~1customers/post/responses/400/content/application~1problem+json/examples/invalid_content_type","paths/~1customers/post/responses/400/content/application~1problem+json/examples/malformed_body"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_7","exampleIds":["paths/~1customers/post/responses/400/content/application~1problem+json/examples/invalid_content_type","paths/~1customers/post/responses/400/content/application~1problem+json/examples/malformed_body"]}}},{"code":"401","schemaId":"schema_8","exampleIds":["paths/~1customers/post/responses/401/content/application~1problem+json/examples/missing_token","paths/~1customers/post/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1customers/post/responses/401/content/application~1problem+json/examples/token_expired"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_8","exampleIds":["paths/~1customers/post/responses/401/content/application~1problem+json/examples/missing_token","paths/~1customers/post/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1customers/post/responses/401/content/application~1problem+json/examples/token_expired"]}}},{"code":"409","schemaId":"schema_14","exampleIds":["paths/~1customers/post/responses/409/content/application~1problem+json/examples/customer_already_exists"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_14","exampleIds":["paths/~1customers/post/responses/409/content/application~1problem+json/examples/customer_already_exists"]}}},{"code":"422","schemaId":"schema_15","exampleIds":["paths/~1customers/post/responses/422/content/application~1problem+json/examples/missing_required_field","paths/~1customers/post/responses/422/content/application~1problem+json/examples/invalid_cpf","paths/~1customers/post/responses/422/content/application~1problem+json/examples/invalid_cnpj","paths/~1customers/post/responses/422/content/application~1problem+json/examples/invalid_email","paths/~1customers/post/responses/422/content/application~1problem+json/examples/invalid_phone"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_15","exampleIds":["paths/~1customers/post/responses/422/content/application~1problem+json/examples/missing_required_field","paths/~1customers/post/responses/422/content/application~1problem+json/examples/invalid_cpf","paths/~1customers/post/responses/422/content/application~1problem+json/examples/invalid_cnpj","paths/~1customers/post/responses/422/content/application~1problem+json/examples/invalid_email","paths/~1customers/post/responses/422/content/application~1problem+json/examples/invalid_phone"]}}},{"code":"429","schemaId":"schema_3","exampleIds":["paths/~1customers/post/responses/429/content/application~1problem+json/example"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_3","exampleIds":["paths/~1customers/post/responses/429/content/application~1problem+json/example"]}}},{"code":"500","schemaId":"schema_5","exampleIds":["paths/~1customers/post/responses/500/content/application~1problem+json/example"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_5","exampleIds":["paths/~1customers/post/responses/500/content/application~1problem+json/example"]}}}],"examples":[]}]}]}]},"httpPath":"/customers"},{"label":"List customers","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/en-us/apis/openapi/customers/listcustomers","routeSlug":"/en-us/apis/openapi/customers/listcustomers","metadata":{"seo":{"title":"List customers","description":"GET /customers"}},"content":{"contentType":"item","itemVariant":"httpItem","meta":{"sourceId":"listCustomers","name":"List customers","isWebhook":false,"pointer":"/paths/~1customers/get","hasSamples":true},"children":[{"nodeType":"container","children":[{"nodeType":"header","level":2,"label":"List customers","isWebhook":false,"showPageActions":true}],"panels":[]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Request","labelTranslationKey":"request","deepLinkSuffix":"request"},{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"tag","tag":"html","attributes":{"name":"div","attrs":{"className":"endpoint-url"}},"children":[{"$$mdtype":"Node","type":"tag","tag":"html","attributes":{"name":"span","attrs":{"className":"mb mb--get"}},"children":[{"$$mdtype":"Node","type":"text","attributes":{"content":"GET"},"children":[]}]},{"$$mdtype":"Node","type":"text","attributes":{"content":" /customers"},"children":[]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"List customers"},"children":[]}]}]}]},{"nodeType":"security","requirements":[{"schemes":[{"name":"bearerAuth","scopes":[],"type":"http","scheme":"bearer","bearerFormat":"JWT","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"JWT token obtained via OAuth2 Client Credentials. Send "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"POST /auth/token"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"with your credentials ("},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"client_id"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" and "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"client_secret"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":") in the"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Authorization: Basic base64(client_id:client_secret)"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" header to receive an"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"access token. Include the token in all requests:"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Authorization: Bearer <token>"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":". The token expires in 1 hour (3600s)."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Prefixes: "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"dinie_cs_live_"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" (production), "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"dinie_cs_test_"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" (sandbox)."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The returned token is prefixed with "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"dinie_at_"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]}]}]}]},{"nodeType":"item-content","variant":"query","label":"Query","labelTranslationKey":"query","parameters":[{"name":"external_id","in":"query","schemaId":"schema_6","description":"Filter by partner external reference"},{"name":"cpf","in":"query","schemaId":"schema_6","description":"Filter by CPF"},{"name":"status","in":"query","schemaId":"schema_16","description":"Filter by customer status"},{"name":"sort","in":"query","schemaId":"schema_17","description":"Field to sort results by"},{"name":"order","in":"query","schemaId":"schema_18","description":"Sort direction for results"},{"name":"starting_after","in":"query","schemaId":"schema_6","description":"Prefixed ID of the last item from the previous page."},{"name":"limit","in":"query","schemaId":"schema_19","description":"Number of items to return. Min: 1, Max: 100."}],"pointer":"/paths/~1customers/get/parameters"}],"panels":[{"children":[{"kind":"code-sample","source":{"kind":"code-sample","operationType":"http","method":"GET","path":"/customers","servers":[{"url":"/_mock/en-us/apis/openapi","description":"Mock server","isMockServer":true},{"url":"https://api.dinie.com/api/v3","description":"Production"},{"url":"https://api-dev.dinietech.io/api/v3","description":"Sandbox"}],"parameters":{"path":[],"query":[{"name":"external_id","in":"query","schemaId":"schema_6"},{"name":"cpf","in":"query","schemaId":"schema_6"},{"name":"status","in":"query","schemaId":"schema_16"},{"name":"sort","in":"query","schemaId":"schema_17"},{"name":"order","in":"query","schemaId":"schema_18"},{"name":"starting_after","in":"query","schemaId":"schema_6"},{"name":"limit","in":"query","schemaId":"schema_19"}],"querystring":[],"header":[],"cookie":[]},"security":[{"schemes":[{"id":"bearerAuth","type":"http","scheme":"bearer","bearerFormat":"JWT"}],"scopes":[]}],"responseCodes":["200","400","401","429","500"],"pointer":"/customers","href":"customers/listcustomers","openApiOperationId":"listCustomers","summary":"List customers"},"definitionSamples":[{"lang":"curl","source":"# List customers filtered by CPF\ncurl \"https://api.dinie.com/api/v3/customers?cpf=123.456.789-00&limit=10\" \\\n  -H \"Authorization: Bearer $DINIE_API_TOKEN\"\n"},{"lang":"Python","source":"from dinie import Dinie\n\nclient = Dinie(\n    client_id=\"dinie_ci_abc123\",\n    client_secret=\"dinie_cs_live_xyz789\"\n)\n\n# List customers filtered by CPF\ncustomers = client.customers.list(\n    cpf=\"123.456.789-00\",\n    limit=10\n)\n\nfor cust in customers.data:\n    print(f\"{cust.name}: {cust.status}\")\n\n# Paginate with starting_after\nif customers.has_more:\n    next_page = client.customers.list(\n        starting_after=customers.data[-1].id,\n        limit=10\n    )\n"},{"lang":"Node.js","source":"const { Dinie } = require(\"dinie\");\n\nconst client = new Dinie({\n  clientId: \"dinie_ci_abc123\",\n  clientSecret: \"dinie_cs_live_xyz789\",\n});\n\n// List customers filtered by CPF\nconst customers = await client.customers.list({\n  cpf: \"123.456.789-00\",\n  limit: 10,\n});\n\nfor (const cust of customers.data) {\n  console.log(`${cust.name}: ${cust.status}`);\n}\n\n// Paginate with startingAfter\nif (customers.hasMore) {\n  const nextPage = await client.customers.list({\n    startingAfter: customers.data.at(-1).id,\n    limit: 10,\n  });\n}\n"},{"lang":"Ruby","source":"require \"dinie\"\n\nclient = Dinie::Client.new(\n  client_id: \"dinie_ci_abc123\",\n  client_secret: \"dinie_cs_live_xyz789\"\n)\n\n# List customers filtered by CPF\ncustomers = client.customers.list(\n  cpf: \"123.456.789-00\",\n  limit: 10\n)\n\ncustomers.data.each do |cust|\n  puts \"#{cust.name}: #{cust.status}\"\nend\n\n# Paginate with starting_after\nif customers.has_more\n  next_page = client.customers.list(\n    starting_after: customers.data.last.id,\n    limit: 10\n  )\nend\n"}],"isWebhook":false,"hideReplay":false,"servers":[{"url":"/_mock/en-us/apis/openapi","description":"Mock server","isMockServer":true},{"url":"https://api.dinie.com/api/v3","description":"Production"},{"url":"https://api-dev.dinietech.io/api/v3","description":"Sandbox"}],"examples":[]}]}]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Responses","labelTranslationKey":"responses","deepLinkSuffix":"responses"},{"nodeType":"item-content","variant":"responses","responses":[{"code":"200","description":"List of customers","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_20","exampleIds":["paths/~1customers/get/responses/200/content/application~1json/example"]}},"schemaId":"schema_20","exampleIds":["paths/~1customers/get/responses/200/content/application~1json/example"]},{"code":"400","description":"Bad request","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_21","exampleIds":["paths/~1customers/get/responses/400/content/application~1problem+json/examples/invalid_limit","paths/~1customers/get/responses/400/content/application~1problem+json/examples/invalid_sort","paths/~1customers/get/responses/400/content/application~1problem+json/examples/invalid_order","paths/~1customers/get/responses/400/content/application~1problem+json/examples/invalid_cursor"]}},"schemaId":"schema_21","exampleIds":["paths/~1customers/get/responses/400/content/application~1problem+json/examples/invalid_limit","paths/~1customers/get/responses/400/content/application~1problem+json/examples/invalid_sort","paths/~1customers/get/responses/400/content/application~1problem+json/examples/invalid_order","paths/~1customers/get/responses/400/content/application~1problem+json/examples/invalid_cursor"]},{"code":"401","description":"Authentication failed","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_8","exampleIds":["paths/~1customers/get/responses/401/content/application~1problem+json/examples/missing_token","paths/~1customers/get/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1customers/get/responses/401/content/application~1problem+json/examples/token_expired"]}},"schemaId":"schema_8","exampleIds":["paths/~1customers/get/responses/401/content/application~1problem+json/examples/missing_token","paths/~1customers/get/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1customers/get/responses/401/content/application~1problem+json/examples/token_expired"]},{"code":"429","description":"Rate limit exceeded","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_3","exampleIds":["paths/~1customers/get/responses/429/content/application~1problem+json/example"]}},"schemaId":"schema_3","exampleIds":["paths/~1customers/get/responses/429/content/application~1problem+json/example"],"headers":{"Retry-After":{"schema":{"type":"integer"},"description":"Seconds until the rate limit resets"}},"headerSchemaId":"schema_4"},{"code":"500","description":"Internal server error","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_5","exampleIds":["paths/~1customers/get/responses/500/content/application~1problem+json/example"]}},"schemaId":"schema_5","exampleIds":["paths/~1customers/get/responses/500/content/application~1problem+json/example"]}],"pointer":"/paths/~1customers/get/responses"}],"panels":[{"children":[{"kind":"response","responseCodes":[{"code":"200","schemaId":"schema_20","exampleIds":["paths/~1customers/get/responses/200/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_20","exampleIds":["paths/~1customers/get/responses/200/content/application~1json/example"]}}},{"code":"400","schemaId":"schema_21","exampleIds":["paths/~1customers/get/responses/400/content/application~1problem+json/examples/invalid_limit","paths/~1customers/get/responses/400/content/application~1problem+json/examples/invalid_sort","paths/~1customers/get/responses/400/content/application~1problem+json/examples/invalid_order","paths/~1customers/get/responses/400/content/application~1problem+json/examples/invalid_cursor"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_21","exampleIds":["paths/~1customers/get/responses/400/content/application~1problem+json/examples/invalid_limit","paths/~1customers/get/responses/400/content/application~1problem+json/examples/invalid_sort","paths/~1customers/get/responses/400/content/application~1problem+json/examples/invalid_order","paths/~1customers/get/responses/400/content/application~1problem+json/examples/invalid_cursor"]}}},{"code":"401","schemaId":"schema_8","exampleIds":["paths/~1customers/get/responses/401/content/application~1problem+json/examples/missing_token","paths/~1customers/get/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1customers/get/responses/401/content/application~1problem+json/examples/token_expired"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_8","exampleIds":["paths/~1customers/get/responses/401/content/application~1problem+json/examples/missing_token","paths/~1customers/get/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1customers/get/responses/401/content/application~1problem+json/examples/token_expired"]}}},{"code":"429","schemaId":"schema_3","exampleIds":["paths/~1customers/get/responses/429/content/application~1problem+json/example"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_3","exampleIds":["paths/~1customers/get/responses/429/content/application~1problem+json/example"]}}},{"code":"500","schemaId":"schema_5","exampleIds":["paths/~1customers/get/responses/500/content/application~1problem+json/example"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_5","exampleIds":["paths/~1customers/get/responses/500/content/application~1problem+json/example"]}}}],"examples":[]}]}]}]},"httpPath":"/customers"},{"label":"Get a customer","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/en-us/apis/openapi/customers/getcustomer","routeSlug":"/en-us/apis/openapi/customers/getcustomer","metadata":{"seo":{"title":"Get a customer","description":"GET /customers/{customer_id}"}},"content":{"contentType":"item","itemVariant":"httpItem","meta":{"sourceId":"getCustomer","name":"Get a customer","isWebhook":false,"pointer":"/paths/~1customers~1{customer_id}/get","hasSamples":true},"children":[{"nodeType":"container","children":[{"nodeType":"header","level":2,"label":"Get a customer","isWebhook":false,"showPageActions":true}],"panels":[]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Request","labelTranslationKey":"request","deepLinkSuffix":"request"},{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"tag","tag":"html","attributes":{"name":"div","attrs":{"className":"endpoint-url"}},"children":[{"$$mdtype":"Node","type":"tag","tag":"html","attributes":{"name":"span","attrs":{"className":"mb mb--get"}},"children":[{"$$mdtype":"Node","type":"text","attributes":{"content":"GET"},"children":[]}]},{"$$mdtype":"Node","type":"text","attributes":{"content":" /customers/{customer_id}"},"children":[]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Get a customer"},"children":[]}]}]}]},{"nodeType":"security","requirements":[{"schemes":[{"name":"oauth2","scopes":["kyc:read"],"type":"oauth2","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"OAuth2 Client Credentials flow for obtaining access tokens."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Use "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"client_id"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" and "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"client_secret"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" to authenticate."},"children":[]}]}]}],"flows":{"clientCredentials":{"tokenUrl":"/api/v3/auth/token","scopes":{"kyc:read":"Read a customer's KYC state (requirements, attachments, status).","kyc:upload":"Upload a KYC attachment (document or selfie via the dedicated route).","kyc:submit":"Submit a customer's KYC bundle for review.","biometrics:create":"Mint a biometrics capture session for a customer (partner side of the handoff).","biometrics:exchange":"Exchange a biometrics bootstrap code for a scoped session token (kyc-app side of the handoff)."}}}}]}]},{"nodeType":"item-content","variant":"path","label":"Path","labelTranslationKey":"path","parameters":[{"name":"customer_id","in":"path","schemaId":"schema_22","description":"Customer ID","required":true}],"pointer":"/paths/~1customers~1{customer_id}/get/parameters"}],"panels":[{"children":[{"kind":"code-sample","source":{"kind":"code-sample","operationType":"http","method":"GET","path":"/customers/{customer_id}","servers":[{"url":"/_mock/en-us/apis/openapi","description":"Mock server","isMockServer":true},{"url":"https://api.dinie.com/api/v3","description":"Production"},{"url":"https://api-dev.dinietech.io/api/v3","description":"Sandbox"}],"parameters":{"path":[{"name":"customer_id","in":"path","required":true,"example":"cust_550e8400e29b41d4a716446655440000","schemaId":"components/schemas/CustomerId"}],"query":[],"querystring":[],"header":[],"cookie":[]},"security":[{"schemes":[{"id":"oauth2","type":"oauth2","flows":{"clientCredentials":{"tokenUrl":"/api/v3/auth/token","scopes":{"kyc:read":"Read a customer's KYC state (requirements, attachments, status).","kyc:upload":"Upload a KYC attachment (document or selfie via the dedicated route).","kyc:submit":"Submit a customer's KYC bundle for review.","biometrics:create":"Mint a biometrics capture session for a customer (partner side of the handoff).","biometrics:exchange":"Exchange a biometrics bootstrap code for a scoped session token (kyc-app side of the handoff)."}}}}],"scopes":["kyc:read"]}],"responseCodes":["200","401","403","404","429","500"],"pointer":"/customers/{customer_id}","href":"customers/getcustomer","openApiOperationId":"getCustomer","summary":"Get a customer"},"definitionSamples":[{"lang":"curl","source":"curl https://api.dinie.com/api/v3/customers/cust_550e8400e29b41d4a716446655440000 \\\n  -H \"Authorization: Bearer $DINIE_API_TOKEN\"\n"},{"lang":"Python","source":"from dinie import Dinie\n\nclient = Dinie(\n    client_id=\"dinie_ci_abc123\",\n    client_secret=\"dinie_cs_live_xyz789\"\n)\n\n# Retrieve a customer\ncustomer = client.customers.retrieve(\"cust_550e8400e29b41d4a716446655440000\")\n\nprint(customer.status)       # \"active\"\nprint(customer.name)         # \"João Silva\"\nprint(customer.external_id)  # \"partner-ref-123\"\n"},{"lang":"Node.js","source":"const { Dinie } = require(\"dinie\");\n\nconst client = new Dinie({\n  clientId: \"dinie_ci_abc123\",\n  clientSecret: \"dinie_cs_live_xyz789\",\n});\n\n// Retrieve a customer\nconst customer = await client.customers.retrieve(\n  \"cust_550e8400e29b41d4a716446655440000\"\n);\n\nconsole.log(customer.status);       // \"active\"\nconsole.log(customer.name);         // \"João Silva\"\nconsole.log(customer.externalId);   // \"partner-ref-123\"\n"},{"lang":"Ruby","source":"require \"dinie\"\n\nclient = Dinie::Client.new(\n  client_id: \"dinie_ci_abc123\",\n  client_secret: \"dinie_cs_live_xyz789\"\n)\n\n# Retrieve a customer\ncustomer = client.customers.retrieve(\"cust_550e8400e29b41d4a716446655440000\")\n\nputs customer.status       # \"active\"\nputs customer.name         # \"João Silva\"\nputs customer.external_id  # \"partner-ref-123\"\n"}],"isWebhook":false,"hideReplay":false,"servers":[{"url":"/_mock/en-us/apis/openapi","description":"Mock server","isMockServer":true},{"url":"https://api.dinie.com/api/v3","description":"Production"},{"url":"https://api-dev.dinietech.io/api/v3","description":"Sandbox"}],"examples":[]}]}]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Responses","labelTranslationKey":"responses","deepLinkSuffix":"responses"},{"nodeType":"item-content","variant":"responses","responses":[{"code":"200","description":"Customer details","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/Customer","exampleIds":["paths/~1customers~1{customer_id}/get/responses/200/content/application~1json/example"]}},"schemaId":"components/schemas/Customer","exampleIds":["paths/~1customers~1{customer_id}/get/responses/200/content/application~1json/example"]},{"code":"401","description":"Authentication failed","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_8","exampleIds":["paths/~1customers~1{customer_id}/get/responses/401/content/application~1problem+json/examples/missing_token","paths/~1customers~1{customer_id}/get/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1customers~1{customer_id}/get/responses/401/content/application~1problem+json/examples/token_expired"]}},"schemaId":"schema_8","exampleIds":["paths/~1customers~1{customer_id}/get/responses/401/content/application~1problem+json/examples/missing_token","paths/~1customers~1{customer_id}/get/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1customers~1{customer_id}/get/responses/401/content/application~1problem+json/examples/token_expired"]},{"code":"403","description":"The credential is not permitted to perform this action","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_23","exampleIds":["paths/~1customers~1{customer_id}/get/responses/403/content/application~1problem+json/examples/forbidden"]}},"schemaId":"schema_23","exampleIds":["paths/~1customers~1{customer_id}/get/responses/403/content/application~1problem+json/examples/forbidden"]},{"code":"404","description":"Resource not found","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_24","exampleIds":["paths/~1customers~1{customer_id}/get/responses/404/content/application~1problem+json/examples/customer_not_found"]}},"schemaId":"schema_24","exampleIds":["paths/~1customers~1{customer_id}/get/responses/404/content/application~1problem+json/examples/customer_not_found"]},{"code":"429","description":"Rate limit exceeded","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_3","exampleIds":["paths/~1customers~1{customer_id}/get/responses/429/content/application~1problem+json/example"]}},"schemaId":"schema_3","exampleIds":["paths/~1customers~1{customer_id}/get/responses/429/content/application~1problem+json/example"],"headers":{"Retry-After":{"schema":{"type":"integer"},"description":"Seconds until the rate limit resets"}},"headerSchemaId":"schema_4"},{"code":"500","description":"Internal server error","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_5","exampleIds":["paths/~1customers~1{customer_id}/get/responses/500/content/application~1problem+json/example"]}},"schemaId":"schema_5","exampleIds":["paths/~1customers~1{customer_id}/get/responses/500/content/application~1problem+json/example"]}],"pointer":"/paths/~1customers~1{customer_id}/get/responses"}],"panels":[{"children":[{"kind":"response","responseCodes":[{"code":"200","schemaId":"components/schemas/Customer","exampleIds":["paths/~1customers~1{customer_id}/get/responses/200/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/Customer","exampleIds":["paths/~1customers~1{customer_id}/get/responses/200/content/application~1json/example"]}}},{"code":"401","schemaId":"schema_8","exampleIds":["paths/~1customers~1{customer_id}/get/responses/401/content/application~1problem+json/examples/missing_token","paths/~1customers~1{customer_id}/get/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1customers~1{customer_id}/get/responses/401/content/application~1problem+json/examples/token_expired"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_8","exampleIds":["paths/~1customers~1{customer_id}/get/responses/401/content/application~1problem+json/examples/missing_token","paths/~1customers~1{customer_id}/get/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1customers~1{customer_id}/get/responses/401/content/application~1problem+json/examples/token_expired"]}}},{"code":"403","schemaId":"schema_23","exampleIds":["paths/~1customers~1{customer_id}/get/responses/403/content/application~1problem+json/examples/forbidden"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_23","exampleIds":["paths/~1customers~1{customer_id}/get/responses/403/content/application~1problem+json/examples/forbidden"]}}},{"code":"404","schemaId":"schema_24","exampleIds":["paths/~1customers~1{customer_id}/get/responses/404/content/application~1problem+json/examples/customer_not_found"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_24","exampleIds":["paths/~1customers~1{customer_id}/get/responses/404/content/application~1problem+json/examples/customer_not_found"]}}},{"code":"429","schemaId":"schema_3","exampleIds":["paths/~1customers~1{customer_id}/get/responses/429/content/application~1problem+json/example"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_3","exampleIds":["paths/~1customers~1{customer_id}/get/responses/429/content/application~1problem+json/example"]}}},{"code":"500","schemaId":"schema_5","exampleIds":["paths/~1customers~1{customer_id}/get/responses/500/content/application~1problem+json/example"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_5","exampleIds":["paths/~1customers~1{customer_id}/get/responses/500/content/application~1problem+json/example"]}}}],"examples":[]}]}]}]},"httpPath":"/customers/{customer_id}"},{"label":"Update customer data","deprecated":false,"httpVerb":"patch","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/en-us/apis/openapi/customers/updatecustomer","routeSlug":"/en-us/apis/openapi/customers/updatecustomer","metadata":{"seo":{"title":"Update customer data","description":"PATCH /customers/{customer_id}"}},"content":{"contentType":"item","itemVariant":"httpItem","meta":{"sourceId":"updateCustomer","name":"Update customer data","isWebhook":false,"pointer":"/paths/~1customers~1{customer_id}/patch","hasSamples":true},"children":[{"nodeType":"container","children":[{"nodeType":"header","level":2,"label":"Update customer data","isWebhook":false,"showPageActions":true}],"panels":[]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Request","labelTranslationKey":"request","deepLinkSuffix":"request"},{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"tag","tag":"html","attributes":{"name":"div","attrs":{"className":"endpoint-url"}},"children":[{"$$mdtype":"Node","type":"tag","tag":"html","attributes":{"name":"span","attrs":{"className":"mb mb--patch"}},"children":[{"$$mdtype":"Node","type":"text","attributes":{"content":"PATCH"},"children":[]}]},{"$$mdtype":"Node","type":"text","attributes":{"content":" /customers/{customer_id}"},"children":[]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Update customer data"},"children":[]}]}]}]},{"nodeType":"security","requirements":[{"schemes":[{"name":"bearerAuth","scopes":[],"type":"http","scheme":"bearer","bearerFormat":"JWT","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"JWT token obtained via OAuth2 Client Credentials. Send "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"POST /auth/token"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"with your credentials ("},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"client_id"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" and "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"client_secret"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":") in the"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Authorization: Basic base64(client_id:client_secret)"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" header to receive an"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"access token. Include the token in all requests:"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Authorization: Bearer <token>"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":". The token expires in 1 hour (3600s)."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Prefixes: "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"dinie_cs_live_"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" (production), "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"dinie_cs_test_"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" (sandbox)."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The returned token is prefixed with "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"dinie_at_"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]}]}]}]},{"nodeType":"item-content","variant":"path","label":"Path","labelTranslationKey":"path","parameters":[{"name":"customer_id","in":"path","schemaId":"schema_22","description":"Customer ID","required":true}],"pointer":"/paths/~1customers~1{customer_id}/patch/parameters"},{"nodeType":"item-content","variant":"body","label":"Request Body","labelTranslationKey":"body","required":true,"mediaTypes":["application/json"],"mediaTypeSchemas":{"application/json":{"schemaId":"components/schemas/UpdateCustomerRequest","exampleIds":["paths/~1customers~1{customer_id}/patch/requestBody/content/application~1json/example"]}},"schemaId":"components/schemas/UpdateCustomerRequest","exampleIds":["paths/~1customers~1{customer_id}/patch/requestBody/content/application~1json/example"],"pointer":"/paths/~1customers~1{customer_id}/patch/requestBody"}],"panels":[{"children":[{"kind":"code-sample","source":{"kind":"code-sample","operationType":"http","method":"PATCH","path":"/customers/{customer_id}","servers":[{"url":"/_mock/en-us/apis/openapi","description":"Mock server","isMockServer":true},{"url":"https://api.dinie.com/api/v3","description":"Production"},{"url":"https://api-dev.dinietech.io/api/v3","description":"Sandbox"}],"parameters":{"path":[{"name":"customer_id","in":"path","required":true,"example":"cust_550e8400e29b41d4a716446655440000","schemaId":"components/schemas/CustomerId"}],"query":[],"querystring":[],"header":[],"cookie":[]},"security":[{"schemes":[{"id":"bearerAuth","type":"http","scheme":"bearer","bearerFormat":"JWT"}],"scopes":[]}],"requestBody":{"application/json":{"schemaId":"components/schemas/UpdateCustomerRequest","exampleIds":["paths/~1customers~1{customer_id}/patch/requestBody/content/application~1json/example"]}},"responseCodes":["200","400","401","404","422","429","500"],"pointer":"/customers/{customer_id}","href":"customers/updatecustomer","openApiOperationId":"updateCustomer","summary":"Update customer data"},"definitionSamples":[{"lang":"curl","source":"curl -X PATCH https://api.dinie.com/api/v3/customers/cust_550e8400e29b41d4a716446655440000 \\\n  -H \"Authorization: Bearer $DINIE_API_TOKEN\" \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\n    \"email\": \"joao.novo@example.com\",\n    \"phone\": \"+5511988887777\"\n  }'\n"},{"lang":"Python","source":"from dinie import Dinie\n\nclient = Dinie(\n    client_id=\"dinie_ci_abc123\",\n    client_secret=\"dinie_cs_live_xyz789\"\n)\n\n# Update customer data (e.g., fix rejected KYC fields)\ncustomer = client.customers.update(\n    \"cust_550e8400e29b41d4a716446655440000\",\n    email=\"joao.novo@example.com\",\n    phone=\"+5511988887777\"\n)\n\nprint(customer.email)  # \"joao.novo@example.com\"\nprint(customer.phone)  # \"+5511988887777\"\n"},{"lang":"Node.js","source":"const { Dinie } = require(\"dinie\");\n\nconst client = new Dinie({\n  clientId: \"dinie_ci_abc123\",\n  clientSecret: \"dinie_cs_live_xyz789\",\n});\n\n// Update customer data (e.g., fix rejected KYC fields)\nconst customer = await client.customers.update(\n  \"cust_550e8400e29b41d4a716446655440000\",\n  {\n    email: \"joao.novo@example.com\",\n    phone: \"+5511988887777\",\n  }\n);\n\nconsole.log(customer.email);  // \"joao.novo@example.com\"\nconsole.log(customer.phone);  // \"+5511988887777\"\n"},{"lang":"Ruby","source":"require \"dinie\"\n\nclient = Dinie::Client.new(\n  client_id: \"dinie_ci_abc123\",\n  client_secret: \"dinie_cs_live_xyz789\"\n)\n\n# Update customer data (e.g., fix rejected KYC fields)\ncustomer = client.customers.update(\n  \"cust_550e8400e29b41d4a716446655440000\",\n  email: \"joao.novo@example.com\",\n  phone: \"+5511988887777\"\n)\n\nputs customer.email  # \"joao.novo@example.com\"\nputs customer.phone  # \"+5511988887777\"\n"}],"isWebhook":false,"hideReplay":false,"servers":[{"url":"/_mock/en-us/apis/openapi","description":"Mock server","isMockServer":true},{"url":"https://api.dinie.com/api/v3","description":"Production"},{"url":"https://api-dev.dinietech.io/api/v3","description":"Sandbox"}],"schemaId":"components/schemas/UpdateCustomerRequest","exampleIds":["paths/~1customers~1{customer_id}/patch/requestBody/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeSchemas":{"application/json":{"schemaId":"components/schemas/UpdateCustomerRequest","exampleIds":["paths/~1customers~1{customer_id}/patch/requestBody/content/application~1json/example"]}},"examples":[{}]}]}]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Responses","labelTranslationKey":"responses","deepLinkSuffix":"responses"},{"nodeType":"item-content","variant":"responses","responses":[{"code":"200","description":"Customer updated","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/Customer","exampleIds":["paths/~1customers~1{customer_id}/patch/responses/200/content/application~1json/example"]}},"schemaId":"components/schemas/Customer","exampleIds":["paths/~1customers~1{customer_id}/patch/responses/200/content/application~1json/example"]},{"code":"400","description":"Bad request","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_25","exampleIds":["paths/~1customers~1{customer_id}/patch/responses/400/content/application~1problem+json/examples/invalid_content_type","paths/~1customers~1{customer_id}/patch/responses/400/content/application~1problem+json/examples/malformed_body","paths/~1customers~1{customer_id}/patch/responses/400/content/application~1problem+json/examples/empty_update"]}},"schemaId":"schema_25","exampleIds":["paths/~1customers~1{customer_id}/patch/responses/400/content/application~1problem+json/examples/invalid_content_type","paths/~1customers~1{customer_id}/patch/responses/400/content/application~1problem+json/examples/malformed_body","paths/~1customers~1{customer_id}/patch/responses/400/content/application~1problem+json/examples/empty_update"]},{"code":"401","description":"Authentication failed","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_8","exampleIds":["paths/~1customers~1{customer_id}/patch/responses/401/content/application~1problem+json/examples/missing_token","paths/~1customers~1{customer_id}/patch/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1customers~1{customer_id}/patch/responses/401/content/application~1problem+json/examples/token_expired"]}},"schemaId":"schema_8","exampleIds":["paths/~1customers~1{customer_id}/patch/responses/401/content/application~1problem+json/examples/missing_token","paths/~1customers~1{customer_id}/patch/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1customers~1{customer_id}/patch/responses/401/content/application~1problem+json/examples/token_expired"]},{"code":"404","description":"Resource not found","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_24","exampleIds":["paths/~1customers~1{customer_id}/patch/responses/404/content/application~1problem+json/examples/customer_not_found"]}},"schemaId":"schema_24","exampleIds":["paths/~1customers~1{customer_id}/patch/responses/404/content/application~1problem+json/examples/customer_not_found"]},{"code":"422","description":"Validation failed","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_26","exampleIds":["paths/~1customers~1{customer_id}/patch/responses/422/content/application~1problem+json/examples/invalid_email","paths/~1customers~1{customer_id}/patch/responses/422/content/application~1problem+json/examples/invalid_phone"]}},"schemaId":"schema_26","exampleIds":["paths/~1customers~1{customer_id}/patch/responses/422/content/application~1problem+json/examples/invalid_email","paths/~1customers~1{customer_id}/patch/responses/422/content/application~1problem+json/examples/invalid_phone"]},{"code":"429","description":"Rate limit exceeded","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_3","exampleIds":["paths/~1customers~1{customer_id}/patch/responses/429/content/application~1problem+json/example"]}},"schemaId":"schema_3","exampleIds":["paths/~1customers~1{customer_id}/patch/responses/429/content/application~1problem+json/example"],"headers":{"Retry-After":{"schema":{"type":"integer"},"description":"Seconds until the rate limit resets"}},"headerSchemaId":"schema_4"},{"code":"500","description":"Internal server error","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_5","exampleIds":["paths/~1customers~1{customer_id}/patch/responses/500/content/application~1problem+json/example"]}},"schemaId":"schema_5","exampleIds":["paths/~1customers~1{customer_id}/patch/responses/500/content/application~1problem+json/example"]}],"pointer":"/paths/~1customers~1{customer_id}/patch/responses"}],"panels":[{"children":[{"kind":"response","responseCodes":[{"code":"200","schemaId":"components/schemas/Customer","exampleIds":["paths/~1customers~1{customer_id}/patch/responses/200/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/Customer","exampleIds":["paths/~1customers~1{customer_id}/patch/responses/200/content/application~1json/example"]}}},{"code":"400","schemaId":"schema_25","exampleIds":["paths/~1customers~1{customer_id}/patch/responses/400/content/application~1problem+json/examples/invalid_content_type","paths/~1customers~1{customer_id}/patch/responses/400/content/application~1problem+json/examples/malformed_body","paths/~1customers~1{customer_id}/patch/responses/400/content/application~1problem+json/examples/empty_update"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_25","exampleIds":["paths/~1customers~1{customer_id}/patch/responses/400/content/application~1problem+json/examples/invalid_content_type","paths/~1customers~1{customer_id}/patch/responses/400/content/application~1problem+json/examples/malformed_body","paths/~1customers~1{customer_id}/patch/responses/400/content/application~1problem+json/examples/empty_update"]}}},{"code":"401","schemaId":"schema_8","exampleIds":["paths/~1customers~1{customer_id}/patch/responses/401/content/application~1problem+json/examples/missing_token","paths/~1customers~1{customer_id}/patch/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1customers~1{customer_id}/patch/responses/401/content/application~1problem+json/examples/token_expired"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_8","exampleIds":["paths/~1customers~1{customer_id}/patch/responses/401/content/application~1problem+json/examples/missing_token","paths/~1customers~1{customer_id}/patch/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1customers~1{customer_id}/patch/responses/401/content/application~1problem+json/examples/token_expired"]}}},{"code":"404","schemaId":"schema_24","exampleIds":["paths/~1customers~1{customer_id}/patch/responses/404/content/application~1problem+json/examples/customer_not_found"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_24","exampleIds":["paths/~1customers~1{customer_id}/patch/responses/404/content/application~1problem+json/examples/customer_not_found"]}}},{"code":"422","schemaId":"schema_26","exampleIds":["paths/~1customers~1{customer_id}/patch/responses/422/content/application~1problem+json/examples/invalid_email","paths/~1customers~1{customer_id}/patch/responses/422/content/application~1problem+json/examples/invalid_phone"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_26","exampleIds":["paths/~1customers~1{customer_id}/patch/responses/422/content/application~1problem+json/examples/invalid_email","paths/~1customers~1{customer_id}/patch/responses/422/content/application~1problem+json/examples/invalid_phone"]}}},{"code":"429","schemaId":"schema_3","exampleIds":["paths/~1customers~1{customer_id}/patch/responses/429/content/application~1problem+json/example"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_3","exampleIds":["paths/~1customers~1{customer_id}/patch/responses/429/content/application~1problem+json/example"]}}},{"code":"500","schemaId":"schema_5","exampleIds":["paths/~1customers~1{customer_id}/patch/responses/500/content/application~1problem+json/example"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_5","exampleIds":["paths/~1customers~1{customer_id}/patch/responses/500/content/application~1problem+json/example"]}}}],"examples":[]}]}]}]},"httpPath":"/customers/{customer_id}"},{"label":"Upload a KYC attachment","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/en-us/apis/openapi/customers/uploadkycattachment","routeSlug":"/en-us/apis/openapi/customers/uploadkycattachment","metadata":{"seo":{"title":"Upload a KYC attachment","description":"POST /customers/{customer_id}/kyc-attachments"}},"content":{"contentType":"item","itemVariant":"httpItem","meta":{"sourceId":"uploadKycAttachment","name":"Upload a KYC attachment","isWebhook":false,"pointer":"/paths/~1customers~1{customer_id}~1kyc-attachments/post","hasSamples":true},"children":[{"nodeType":"container","children":[{"nodeType":"header","level":2,"label":"Upload a KYC attachment","isWebhook":false,"showPageActions":true}],"panels":[]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Request","labelTranslationKey":"request","deepLinkSuffix":"request"},{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"tag","tag":"html","attributes":{"name":"div","attrs":{"className":"endpoint-url"}},"children":[{"$$mdtype":"Node","type":"tag","tag":"html","attributes":{"name":"span","attrs":{"className":"mb mb--post"}},"children":[{"$$mdtype":"Node","type":"text","attributes":{"content":"POST"},"children":[]}]},{"$$mdtype":"Node","type":"text","attributes":{"content":" /customers/{customer_id}/kyc-attachments"},"children":[]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Upload a file for a KYC requirement"},"children":[]}]}]}]},{"nodeType":"security","requirements":[{"schemes":[{"name":"oauth2","scopes":["kyc:upload"],"type":"oauth2","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"OAuth2 Client Credentials flow for obtaining access tokens."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Use "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"client_id"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" and "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"client_secret"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" to authenticate."},"children":[]}]}]}],"flows":{"clientCredentials":{"tokenUrl":"/api/v3/auth/token","scopes":{"kyc:read":"Read a customer's KYC state (requirements, attachments, status).","kyc:upload":"Upload a KYC attachment (document or selfie via the dedicated route).","kyc:submit":"Submit a customer's KYC bundle for review.","biometrics:create":"Mint a biometrics capture session for a customer (partner side of the handoff).","biometrics:exchange":"Exchange a biometrics bootstrap code for a scoped session token (kyc-app side of the handoff)."}}}}]}]},{"nodeType":"item-content","variant":"path","label":"Path","labelTranslationKey":"path","parameters":[{"name":"customer_id","in":"path","schemaId":"schema_22","description":"Customer ID","required":true}],"pointer":"/paths/~1customers~1{customer_id}~1kyc-attachments/post/parameters"},{"nodeType":"item-content","variant":"headers","label":"Headers","labelTranslationKey":"header","parameters":[{"name":"X-Idempotency-Key","in":"header","schemaId":"schema_6","description":"Unique string for idempotent POST requests. Cached for 24 hours."}],"pointer":"/paths/~1customers~1{customer_id}~1kyc-attachments/post/parameters"},{"nodeType":"item-content","variant":"body","label":"Request Body","labelTranslationKey":"body","required":true,"mediaTypes":["multipart/form-data"],"mediaTypeSchemas":{"multipart/form-data":{"schemaId":"schema_27"}},"schemaId":"schema_27","pointer":"/paths/~1customers~1{customer_id}~1kyc-attachments/post/requestBody"}],"panels":[{"children":[{"kind":"code-sample","source":{"kind":"code-sample","operationType":"http","method":"POST","path":"/customers/{customer_id}/kyc-attachments","servers":[{"url":"/_mock/en-us/apis/openapi","description":"Mock server","isMockServer":true},{"url":"https://api.dinie.com/api/v3","description":"Production"},{"url":"https://api-dev.dinietech.io/api/v3","description":"Sandbox"}],"parameters":{"path":[{"name":"customer_id","in":"path","required":true,"example":"cust_550e8400e29b41d4a716446655440000","schemaId":"components/schemas/CustomerId"}],"query":[],"querystring":[],"header":[{"name":"X-Idempotency-Key","in":"header","required":false,"schemaId":"schema_6"}],"cookie":[]},"security":[{"schemes":[{"id":"oauth2","type":"oauth2","flows":{"clientCredentials":{"tokenUrl":"/api/v3/auth/token","scopes":{"kyc:read":"Read a customer's KYC state (requirements, attachments, status).","kyc:upload":"Upload a KYC attachment (document or selfie via the dedicated route).","kyc:submit":"Submit a customer's KYC bundle for review.","biometrics:create":"Mint a biometrics capture session for a customer (partner side of the handoff).","biometrics:exchange":"Exchange a biometrics bootstrap code for a scoped session token (kyc-app side of the handoff)."}}}}],"scopes":["kyc:upload"]}],"requestBody":{"multipart/form-data":{"schemaId":"schema_27"}},"responseCodes":["201","400","401","403","404","409","422","429","500"],"pointer":"/customers/{customer_id}/kyc-attachments","href":"customers/uploadkycattachment","openApiOperationId":"uploadKycAttachment","summary":"Upload a KYC attachment"},"definitionSamples":[{"lang":"curl","source":"curl -X POST https://api.dinie.com/api/v3/customers/cust_550e8400e29b41d4a716446655440000/kyc-attachments \\\n  -H \"Authorization: Bearer $DINIE_API_TOKEN\" \\\n  -F \"requirement_id=identity_003XXXXXXXXXXXXXXX\" \\\n  -F \"evidence_type=cnh\" \\\n  -F \"attachment_type=front\" \\\n  -F \"file=@cnh-front.jpg\"\n"},{"lang":"Python","source":"from dinie import Dinie\n\nclient = Dinie(\n    client_id=\"dinie_ci_abc123\",\n    client_secret=\"dinie_cs_live_xyz789\"\n)\n\n# Upload a KYC attachment\nattachment = client.customers.upload_kyc_attachment(\n    \"cust_550e8400e29b41d4a716446655440000\",\n    requirement_id=\"identity_003XXXXXXXXXXXXXXX\",\n    evidence_type=\"cnh\",\n    attachment_type=\"front\",\n    file=open(\"cnh-front.jpg\", \"rb\")\n)\n\nprint(attachment.submitted)  # True\n"},{"lang":"Node.js","source":"const fs = require(\"fs\");\nconst { Dinie } = require(\"dinie\");\n\nconst client = new Dinie({\n  clientId: \"dinie_ci_abc123\",\n  clientSecret: \"dinie_cs_live_xyz789\",\n});\n\n// Upload a KYC attachment\nconst attachment = await client.customers.uploadKycAttachment(\n  \"cust_550e8400e29b41d4a716446655440000\",\n  {\n    requirementId: \"identity_003XXXXXXXXXXXXXXX\",\n    evidenceType: \"cnh\",\n    attachmentType: \"front\",\n    file: fs.createReadStream(\"cnh-front.jpg\"),\n  }\n);\n\nconsole.log(attachment.submitted);  // true\n"},{"lang":"Ruby","source":"require \"dinie\"\n\nclient = Dinie::Client.new(\n  client_id: \"dinie_ci_abc123\",\n  client_secret: \"dinie_cs_live_xyz789\"\n)\n\n# Upload a KYC attachment\nattachment = client.customers.upload_kyc_attachment(\n  \"cust_550e8400e29b41d4a716446655440000\",\n  requirement_id: \"identity_003XXXXXXXXXXXXXXX\",\n  evidence_type: \"cnh\",\n  attachment_type: \"front\",\n  file: File.open(\"cnh-front.jpg\")\n)\n\nputs attachment.submitted  # true\n"}],"isWebhook":false,"hideReplay":false,"servers":[{"url":"/_mock/en-us/apis/openapi","description":"Mock server","isMockServer":true},{"url":"https://api.dinie.com/api/v3","description":"Production"},{"url":"https://api-dev.dinietech.io/api/v3","description":"Sandbox"}],"schemaId":"schema_27","mediaTypes":["multipart/form-data"],"mediaTypeSchemas":{"multipart/form-data":{"schemaId":"schema_27"}},"examples":[]}]}]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Responses","labelTranslationKey":"responses","deepLinkSuffix":"responses"},{"nodeType":"item-content","variant":"responses","responses":[{"code":"201","description":"Attachment uploaded","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/KycAttachmentResponse","exampleIds":["paths/~1customers~1{customer_id}~1kyc-attachments/post/responses/201/content/application~1json/example"]}},"schemaId":"components/schemas/KycAttachmentResponse","exampleIds":["paths/~1customers~1{customer_id}~1kyc-attachments/post/responses/201/content/application~1json/example"]},{"code":"400","description":"Bad request","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_28","exampleIds":["paths/~1customers~1{customer_id}~1kyc-attachments/post/responses/400/content/application~1problem+json/examples/invalid_content_type","paths/~1customers~1{customer_id}~1kyc-attachments/post/responses/400/content/application~1problem+json/examples/missing_file","paths/~1customers~1{customer_id}~1kyc-attachments/post/responses/400/content/application~1problem+json/examples/missing_type","paths/~1customers~1{customer_id}~1kyc-attachments/post/responses/400/content/application~1problem+json/examples/file_too_large"]}},"schemaId":"schema_28","exampleIds":["paths/~1customers~1{customer_id}~1kyc-attachments/post/responses/400/content/application~1problem+json/examples/invalid_content_type","paths/~1customers~1{customer_id}~1kyc-attachments/post/responses/400/content/application~1problem+json/examples/missing_file","paths/~1customers~1{customer_id}~1kyc-attachments/post/responses/400/content/application~1problem+json/examples/missing_type","paths/~1customers~1{customer_id}~1kyc-attachments/post/responses/400/content/application~1problem+json/examples/file_too_large"]},{"code":"401","description":"Authentication failed","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_8","exampleIds":["paths/~1customers~1{customer_id}~1kyc-attachments/post/responses/401/content/application~1problem+json/examples/missing_token","paths/~1customers~1{customer_id}~1kyc-attachments/post/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1customers~1{customer_id}~1kyc-attachments/post/responses/401/content/application~1problem+json/examples/token_expired"]}},"schemaId":"schema_8","exampleIds":["paths/~1customers~1{customer_id}~1kyc-attachments/post/responses/401/content/application~1problem+json/examples/missing_token","paths/~1customers~1{customer_id}~1kyc-attachments/post/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1customers~1{customer_id}~1kyc-attachments/post/responses/401/content/application~1problem+json/examples/token_expired"]},{"code":"403","description":"The credential is not permitted to perform this action","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_23","exampleIds":["paths/~1customers~1{customer_id}~1kyc-attachments/post/responses/403/content/application~1problem+json/examples/forbidden"]}},"schemaId":"schema_23","exampleIds":["paths/~1customers~1{customer_id}~1kyc-attachments/post/responses/403/content/application~1problem+json/examples/forbidden"]},{"code":"404","description":"Resource not found","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_24","exampleIds":["paths/~1customers~1{customer_id}~1kyc-attachments/post/responses/404/content/application~1problem+json/examples/customer_not_found"]}},"schemaId":"schema_24","exampleIds":["paths/~1customers~1{customer_id}~1kyc-attachments/post/responses/404/content/application~1problem+json/examples/customer_not_found"]},{"code":"409","description":"Conflict","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_29","exampleIds":["paths/~1customers~1{customer_id}~1kyc-attachments/post/responses/409/content/application~1problem+json/examples/email_already_exists"]}},"schemaId":"schema_29","exampleIds":["paths/~1customers~1{customer_id}~1kyc-attachments/post/responses/409/content/application~1problem+json/examples/email_already_exists"]},{"code":"422","description":"Validation failed","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_30","exampleIds":["paths/~1customers~1{customer_id}~1kyc-attachments/post/responses/422/content/application~1problem+json/examples/invalid_requirement","paths/~1customers~1{customer_id}~1kyc-attachments/post/responses/422/content/application~1problem+json/examples/invalid_file_format"]}},"schemaId":"schema_30","exampleIds":["paths/~1customers~1{customer_id}~1kyc-attachments/post/responses/422/content/application~1problem+json/examples/invalid_requirement","paths/~1customers~1{customer_id}~1kyc-attachments/post/responses/422/content/application~1problem+json/examples/invalid_file_format"]},{"code":"429","description":"Rate limit exceeded","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_3","exampleIds":["paths/~1customers~1{customer_id}~1kyc-attachments/post/responses/429/content/application~1problem+json/example"]}},"schemaId":"schema_3","exampleIds":["paths/~1customers~1{customer_id}~1kyc-attachments/post/responses/429/content/application~1problem+json/example"],"headers":{"Retry-After":{"schema":{"type":"integer"},"description":"Seconds until the rate limit resets"}},"headerSchemaId":"schema_4"},{"code":"500","description":"Internal server error","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_5","exampleIds":["paths/~1customers~1{customer_id}~1kyc-attachments/post/responses/500/content/application~1problem+json/example"]}},"schemaId":"schema_5","exampleIds":["paths/~1customers~1{customer_id}~1kyc-attachments/post/responses/500/content/application~1problem+json/example"]}],"pointer":"/paths/~1customers~1{customer_id}~1kyc-attachments/post/responses"}],"panels":[{"children":[{"kind":"response","responseCodes":[{"code":"201","schemaId":"components/schemas/KycAttachmentResponse","exampleIds":["paths/~1customers~1{customer_id}~1kyc-attachments/post/responses/201/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/KycAttachmentResponse","exampleIds":["paths/~1customers~1{customer_id}~1kyc-attachments/post/responses/201/content/application~1json/example"]}}},{"code":"400","schemaId":"schema_28","exampleIds":["paths/~1customers~1{customer_id}~1kyc-attachments/post/responses/400/content/application~1problem+json/examples/invalid_content_type","paths/~1customers~1{customer_id}~1kyc-attachments/post/responses/400/content/application~1problem+json/examples/missing_file","paths/~1customers~1{customer_id}~1kyc-attachments/post/responses/400/content/application~1problem+json/examples/missing_type","paths/~1customers~1{customer_id}~1kyc-attachments/post/responses/400/content/application~1problem+json/examples/file_too_large"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_28","exampleIds":["paths/~1customers~1{customer_id}~1kyc-attachments/post/responses/400/content/application~1problem+json/examples/invalid_content_type","paths/~1customers~1{customer_id}~1kyc-attachments/post/responses/400/content/application~1problem+json/examples/missing_file","paths/~1customers~1{customer_id}~1kyc-attachments/post/responses/400/content/application~1problem+json/examples/missing_type","paths/~1customers~1{customer_id}~1kyc-attachments/post/responses/400/content/application~1problem+json/examples/file_too_large"]}}},{"code":"401","schemaId":"schema_8","exampleIds":["paths/~1customers~1{customer_id}~1kyc-attachments/post/responses/401/content/application~1problem+json/examples/missing_token","paths/~1customers~1{customer_id}~1kyc-attachments/post/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1customers~1{customer_id}~1kyc-attachments/post/responses/401/content/application~1problem+json/examples/token_expired"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_8","exampleIds":["paths/~1customers~1{customer_id}~1kyc-attachments/post/responses/401/content/application~1problem+json/examples/missing_token","paths/~1customers~1{customer_id}~1kyc-attachments/post/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1customers~1{customer_id}~1kyc-attachments/post/responses/401/content/application~1problem+json/examples/token_expired"]}}},{"code":"403","schemaId":"schema_23","exampleIds":["paths/~1customers~1{customer_id}~1kyc-attachments/post/responses/403/content/application~1problem+json/examples/forbidden"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_23","exampleIds":["paths/~1customers~1{customer_id}~1kyc-attachments/post/responses/403/content/application~1problem+json/examples/forbidden"]}}},{"code":"404","schemaId":"schema_24","exampleIds":["paths/~1customers~1{customer_id}~1kyc-attachments/post/responses/404/content/application~1problem+json/examples/customer_not_found"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_24","exampleIds":["paths/~1customers~1{customer_id}~1kyc-attachments/post/responses/404/content/application~1problem+json/examples/customer_not_found"]}}},{"code":"409","schemaId":"schema_29","exampleIds":["paths/~1customers~1{customer_id}~1kyc-attachments/post/responses/409/content/application~1problem+json/examples/email_already_exists"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_29","exampleIds":["paths/~1customers~1{customer_id}~1kyc-attachments/post/responses/409/content/application~1problem+json/examples/email_already_exists"]}}},{"code":"422","schemaId":"schema_30","exampleIds":["paths/~1customers~1{customer_id}~1kyc-attachments/post/responses/422/content/application~1problem+json/examples/invalid_requirement","paths/~1customers~1{customer_id}~1kyc-attachments/post/responses/422/content/application~1problem+json/examples/invalid_file_format"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_30","exampleIds":["paths/~1customers~1{customer_id}~1kyc-attachments/post/responses/422/content/application~1problem+json/examples/invalid_requirement","paths/~1customers~1{customer_id}~1kyc-attachments/post/responses/422/content/application~1problem+json/examples/invalid_file_format"]}}},{"code":"429","schemaId":"schema_3","exampleIds":["paths/~1customers~1{customer_id}~1kyc-attachments/post/responses/429/content/application~1problem+json/example"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_3","exampleIds":["paths/~1customers~1{customer_id}~1kyc-attachments/post/responses/429/content/application~1problem+json/example"]}}},{"code":"500","schemaId":"schema_5","exampleIds":["paths/~1customers~1{customer_id}~1kyc-attachments/post/responses/500/content/application~1problem+json/example"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_5","exampleIds":["paths/~1customers~1{customer_id}~1kyc-attachments/post/responses/500/content/application~1problem+json/example"]}}}],"examples":[]}]}]}]},"httpPath":"/customers/{customer_id}/kyc-attachments"},{"label":"Get customer bank account","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/en-us/apis/openapi/customers/getcustomerbankaccount","routeSlug":"/en-us/apis/openapi/customers/getcustomerbankaccount","metadata":{"seo":{"title":"Get customer bank account","description":"GET /customers/{customer_id}/bank-account"}},"content":{"contentType":"item","itemVariant":"httpItem","meta":{"sourceId":"getCustomerBankAccount","name":"Get customer bank account","isWebhook":false,"pointer":"/paths/~1customers~1{customer_id}~1bank-account/get","hasSamples":false},"children":[{"nodeType":"container","children":[{"nodeType":"header","level":2,"label":"Get customer bank account","isWebhook":false,"showPageActions":true}],"panels":[]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Request","labelTranslationKey":"request","deepLinkSuffix":"request"},{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"tag","tag":"html","attributes":{"name":"div","attrs":{"className":"endpoint-url"}},"children":[{"$$mdtype":"Node","type":"tag","tag":"html","attributes":{"name":"span","attrs":{"className":"mb mb--get"}},"children":[{"$$mdtype":"Node","type":"text","attributes":{"content":"GET"},"children":[]}]},{"$$mdtype":"Node","type":"text","attributes":{"content":" /customers/{customer_id}/bank-account"},"children":[]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Return the bank account linked to this customer, if any"},"children":[]}]}]}]},{"nodeType":"security","requirements":[{"schemes":[{"name":"oauth2","scopes":["kyc:read"],"type":"oauth2","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"OAuth2 Client Credentials flow for obtaining access tokens."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Use "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"client_id"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" and "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"client_secret"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" to authenticate."},"children":[]}]}]}],"flows":{"clientCredentials":{"tokenUrl":"/api/v3/auth/token","scopes":{"kyc:read":"Read a customer's KYC state (requirements, attachments, status).","kyc:upload":"Upload a KYC attachment (document or selfie via the dedicated route).","kyc:submit":"Submit a customer's KYC bundle for review.","biometrics:create":"Mint a biometrics capture session for a customer (partner side of the handoff).","biometrics:exchange":"Exchange a biometrics bootstrap code for a scoped session token (kyc-app side of the handoff)."}}}}]}]},{"nodeType":"item-content","variant":"path","label":"Path","labelTranslationKey":"path","parameters":[{"name":"customer_id","in":"path","schemaId":"schema_22","description":"Customer ID","required":true}],"pointer":"/paths/~1customers~1{customer_id}~1bank-account/get/parameters"}],"panels":[{"children":[{"kind":"code-sample","source":{"kind":"code-sample","operationType":"http","method":"GET","path":"/customers/{customer_id}/bank-account","servers":[{"url":"/_mock/en-us/apis/openapi","description":"Mock server","isMockServer":true},{"url":"https://api.dinie.com/api/v3","description":"Production"},{"url":"https://api-dev.dinietech.io/api/v3","description":"Sandbox"}],"parameters":{"path":[{"name":"customer_id","in":"path","required":true,"example":"cust_550e8400e29b41d4a716446655440000","schemaId":"components/schemas/CustomerId"}],"query":[],"querystring":[],"header":[],"cookie":[]},"security":[{"schemes":[{"id":"oauth2","type":"oauth2","flows":{"clientCredentials":{"tokenUrl":"/api/v3/auth/token","scopes":{"kyc:read":"Read a customer's KYC state (requirements, attachments, status).","kyc:upload":"Upload a KYC attachment (document or selfie via the dedicated route).","kyc:submit":"Submit a customer's KYC bundle for review.","biometrics:create":"Mint a biometrics capture session for a customer (partner side of the handoff).","biometrics:exchange":"Exchange a biometrics bootstrap code for a scoped session token (kyc-app side of the handoff)."}}}}],"scopes":["kyc:read"]}],"responseCodes":["200","401","403","404","429","500"],"pointer":"/customers/{customer_id}/bank-account","href":"customers/getcustomerbankaccount","openApiOperationId":"getCustomerBankAccount","summary":"Get customer bank account"},"isWebhook":false,"hideReplay":false,"servers":[{"url":"/_mock/en-us/apis/openapi","description":"Mock server","isMockServer":true},{"url":"https://api.dinie.com/api/v3","description":"Production"},{"url":"https://api-dev.dinietech.io/api/v3","description":"Sandbox"}],"examples":[]}]}]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Responses","labelTranslationKey":"responses","deepLinkSuffix":"responses"},{"nodeType":"item-content","variant":"responses","responses":[{"code":"200","description":"Bank account","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/CustomerBankAccount"}},"schemaId":"components/schemas/CustomerBankAccount"},{"code":"401","description":"Authentication failed","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_8","exampleIds":["paths/~1customers~1{customer_id}~1bank-account/get/responses/401/content/application~1problem+json/examples/missing_token","paths/~1customers~1{customer_id}~1bank-account/get/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1customers~1{customer_id}~1bank-account/get/responses/401/content/application~1problem+json/examples/token_expired"]}},"schemaId":"schema_8","exampleIds":["paths/~1customers~1{customer_id}~1bank-account/get/responses/401/content/application~1problem+json/examples/missing_token","paths/~1customers~1{customer_id}~1bank-account/get/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1customers~1{customer_id}~1bank-account/get/responses/401/content/application~1problem+json/examples/token_expired"]},{"code":"403","description":"The credential is not permitted to perform this action","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_23","exampleIds":["paths/~1customers~1{customer_id}~1bank-account/get/responses/403/content/application~1problem+json/examples/forbidden"]}},"schemaId":"schema_23","exampleIds":["paths/~1customers~1{customer_id}~1bank-account/get/responses/403/content/application~1problem+json/examples/forbidden"]},{"code":"404","description":"Bank account not found"},{"code":"429","description":"Rate limit exceeded","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_3","exampleIds":["paths/~1customers~1{customer_id}~1bank-account/get/responses/429/content/application~1problem+json/example"]}},"schemaId":"schema_3","exampleIds":["paths/~1customers~1{customer_id}~1bank-account/get/responses/429/content/application~1problem+json/example"],"headers":{"Retry-After":{"schema":{"type":"integer"},"description":"Seconds until the rate limit resets"}},"headerSchemaId":"schema_4"},{"code":"500","description":"Internal server error","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_5","exampleIds":["paths/~1customers~1{customer_id}~1bank-account/get/responses/500/content/application~1problem+json/example"]}},"schemaId":"schema_5","exampleIds":["paths/~1customers~1{customer_id}~1bank-account/get/responses/500/content/application~1problem+json/example"]}],"pointer":"/paths/~1customers~1{customer_id}~1bank-account/get/responses"}],"panels":[{"children":[{"kind":"response","responseCodes":[{"code":"200","schemaId":"components/schemas/CustomerBankAccount","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/CustomerBankAccount"}}},{"code":"401","schemaId":"schema_8","exampleIds":["paths/~1customers~1{customer_id}~1bank-account/get/responses/401/content/application~1problem+json/examples/missing_token","paths/~1customers~1{customer_id}~1bank-account/get/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1customers~1{customer_id}~1bank-account/get/responses/401/content/application~1problem+json/examples/token_expired"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_8","exampleIds":["paths/~1customers~1{customer_id}~1bank-account/get/responses/401/content/application~1problem+json/examples/missing_token","paths/~1customers~1{customer_id}~1bank-account/get/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1customers~1{customer_id}~1bank-account/get/responses/401/content/application~1problem+json/examples/token_expired"]}}},{"code":"403","schemaId":"schema_23","exampleIds":["paths/~1customers~1{customer_id}~1bank-account/get/responses/403/content/application~1problem+json/examples/forbidden"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_23","exampleIds":["paths/~1customers~1{customer_id}~1bank-account/get/responses/403/content/application~1problem+json/examples/forbidden"]}}},{"code":"404"},{"code":"429","schemaId":"schema_3","exampleIds":["paths/~1customers~1{customer_id}~1bank-account/get/responses/429/content/application~1problem+json/example"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_3","exampleIds":["paths/~1customers~1{customer_id}~1bank-account/get/responses/429/content/application~1problem+json/example"]}}},{"code":"500","schemaId":"schema_5","exampleIds":["paths/~1customers~1{customer_id}~1bank-account/get/responses/500/content/application~1problem+json/example"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_5","exampleIds":["paths/~1customers~1{customer_id}~1bank-account/get/responses/500/content/application~1problem+json/example"]}}}],"examples":[]}]}]}]},"httpPath":"/customers/{customer_id}/bank-account"},{"label":"Create or update customer bank account","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/en-us/apis/openapi/customers/upsertcustomerbankaccount","routeSlug":"/en-us/apis/openapi/customers/upsertcustomerbankaccount","metadata":{"seo":{"title":"Create or update customer bank account","description":"POST /customers/{customer_id}/bank-account"}},"content":{"contentType":"item","itemVariant":"httpItem","meta":{"sourceId":"upsertCustomerBankAccount","name":"Create or update customer bank account","isWebhook":false,"pointer":"/paths/~1customers~1{customer_id}~1bank-account/post","hasSamples":true},"children":[{"nodeType":"container","children":[{"nodeType":"header","level":2,"label":"Create or update customer bank account","isWebhook":false,"showPageActions":true}],"panels":[]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Request","labelTranslationKey":"request","deepLinkSuffix":"request"},{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"tag","tag":"html","attributes":{"name":"div","attrs":{"className":"endpoint-url"}},"children":[{"$$mdtype":"Node","type":"tag","tag":"html","attributes":{"name":"span","attrs":{"className":"mb mb--post"}},"children":[{"$$mdtype":"Node","type":"text","attributes":{"content":"POST"},"children":[]}]},{"$$mdtype":"Node","type":"text","attributes":{"content":" /customers/{customer_id}/bank-account"},"children":[]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Create or update the bank account linked to this customer; available to biometrics session tokens so the kyc-app can collect disbursement bank data"},"children":[]}]}]}]},{"nodeType":"security","requirements":[{"schemes":[{"name":"oauth2","scopes":["kyc:upload"],"type":"oauth2","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"OAuth2 Client Credentials flow for obtaining access tokens."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Use "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"client_id"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" and "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"client_secret"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" to authenticate."},"children":[]}]}]}],"flows":{"clientCredentials":{"tokenUrl":"/api/v3/auth/token","scopes":{"kyc:read":"Read a customer's KYC state (requirements, attachments, status).","kyc:upload":"Upload a KYC attachment (document or selfie via the dedicated route).","kyc:submit":"Submit a customer's KYC bundle for review.","biometrics:create":"Mint a biometrics capture session for a customer (partner side of the handoff).","biometrics:exchange":"Exchange a biometrics bootstrap code for a scoped session token (kyc-app side of the handoff)."}}}}]}]},{"nodeType":"item-content","variant":"path","label":"Path","labelTranslationKey":"path","parameters":[{"name":"customer_id","in":"path","schemaId":"schema_22","description":"Customer ID","required":true}],"pointer":"/paths/~1customers~1{customer_id}~1bank-account/post/parameters"},{"nodeType":"item-content","variant":"body","label":"Request Body","labelTranslationKey":"body","required":true,"mediaTypes":["application/json"],"mediaTypeSchemas":{"application/json":{"schemaId":"schema_31"}},"schemaId":"schema_31","pointer":"/paths/~1customers~1{customer_id}~1bank-account/post/requestBody"}],"panels":[{"children":[{"kind":"code-sample","source":{"kind":"code-sample","operationType":"http","method":"POST","path":"/customers/{customer_id}/bank-account","servers":[{"url":"/_mock/en-us/apis/openapi","description":"Mock server","isMockServer":true},{"url":"https://api.dinie.com/api/v3","description":"Production"},{"url":"https://api-dev.dinietech.io/api/v3","description":"Sandbox"}],"parameters":{"path":[{"name":"customer_id","in":"path","required":true,"example":"cust_550e8400e29b41d4a716446655440000","schemaId":"components/schemas/CustomerId"}],"query":[],"querystring":[],"header":[],"cookie":[]},"security":[{"schemes":[{"id":"oauth2","type":"oauth2","flows":{"clientCredentials":{"tokenUrl":"/api/v3/auth/token","scopes":{"kyc:read":"Read a customer's KYC state (requirements, attachments, status).","kyc:upload":"Upload a KYC attachment (document or selfie via the dedicated route).","kyc:submit":"Submit a customer's KYC bundle for review.","biometrics:create":"Mint a biometrics capture session for a customer (partner side of the handoff).","biometrics:exchange":"Exchange a biometrics bootstrap code for a scoped session token (kyc-app side of the handoff)."}}}}],"scopes":["kyc:upload"]}],"requestBody":{"application/json":{"schemaId":"schema_31"}},"responseCodes":["200","401","403","422","429","500"],"pointer":"/customers/{customer_id}/bank-account","href":"customers/upsertcustomerbankaccount","openApiOperationId":"upsertCustomerBankAccount","summary":"Create or update customer bank account"},"isWebhook":false,"hideReplay":false,"servers":[{"url":"/_mock/en-us/apis/openapi","description":"Mock server","isMockServer":true},{"url":"https://api.dinie.com/api/v3","description":"Production"},{"url":"https://api-dev.dinietech.io/api/v3","description":"Sandbox"}],"schemaId":"schema_31","mediaTypes":["application/json"],"mediaTypeSchemas":{"application/json":{"schemaId":"schema_31"}},"examples":[]}]}]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Responses","labelTranslationKey":"responses","deepLinkSuffix":"responses"},{"nodeType":"item-content","variant":"responses","responses":[{"code":"200","description":"Bank account saved","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/CustomerBankAccount"}},"schemaId":"components/schemas/CustomerBankAccount"},{"code":"401","description":"Authentication failed","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_8","exampleIds":["paths/~1customers~1{customer_id}~1bank-account/post/responses/401/content/application~1problem+json/examples/missing_token","paths/~1customers~1{customer_id}~1bank-account/post/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1customers~1{customer_id}~1bank-account/post/responses/401/content/application~1problem+json/examples/token_expired"]}},"schemaId":"schema_8","exampleIds":["paths/~1customers~1{customer_id}~1bank-account/post/responses/401/content/application~1problem+json/examples/missing_token","paths/~1customers~1{customer_id}~1bank-account/post/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1customers~1{customer_id}~1bank-account/post/responses/401/content/application~1problem+json/examples/token_expired"]},{"code":"403","description":"The credential is not permitted to perform this action","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_23","exampleIds":["paths/~1customers~1{customer_id}~1bank-account/post/responses/403/content/application~1problem+json/examples/forbidden"]}},"schemaId":"schema_23","exampleIds":["paths/~1customers~1{customer_id}~1bank-account/post/responses/403/content/application~1problem+json/examples/forbidden"]},{"code":"422","description":"Validation failed","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_32","exampleIds":["paths/~1customers~1{customer_id}~1bank-account/post/responses/422/content/application~1problem+json/examples/validation_failed","paths/~1customers~1{customer_id}~1bank-account/post/responses/422/content/application~1problem+json/examples/no_user"]}},"schemaId":"schema_32","exampleIds":["paths/~1customers~1{customer_id}~1bank-account/post/responses/422/content/application~1problem+json/examples/validation_failed","paths/~1customers~1{customer_id}~1bank-account/post/responses/422/content/application~1problem+json/examples/no_user"]},{"code":"429","description":"Rate limit exceeded","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_3","exampleIds":["paths/~1customers~1{customer_id}~1bank-account/post/responses/429/content/application~1problem+json/example"]}},"schemaId":"schema_3","exampleIds":["paths/~1customers~1{customer_id}~1bank-account/post/responses/429/content/application~1problem+json/example"],"headers":{"Retry-After":{"schema":{"type":"integer"},"description":"Seconds until the rate limit resets"}},"headerSchemaId":"schema_4"},{"code":"500","description":"Internal server error","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_5","exampleIds":["paths/~1customers~1{customer_id}~1bank-account/post/responses/500/content/application~1problem+json/example"]}},"schemaId":"schema_5","exampleIds":["paths/~1customers~1{customer_id}~1bank-account/post/responses/500/content/application~1problem+json/example"]}],"pointer":"/paths/~1customers~1{customer_id}~1bank-account/post/responses"}],"panels":[{"children":[{"kind":"response","responseCodes":[{"code":"200","schemaId":"components/schemas/CustomerBankAccount","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/CustomerBankAccount"}}},{"code":"401","schemaId":"schema_8","exampleIds":["paths/~1customers~1{customer_id}~1bank-account/post/responses/401/content/application~1problem+json/examples/missing_token","paths/~1customers~1{customer_id}~1bank-account/post/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1customers~1{customer_id}~1bank-account/post/responses/401/content/application~1problem+json/examples/token_expired"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_8","exampleIds":["paths/~1customers~1{customer_id}~1bank-account/post/responses/401/content/application~1problem+json/examples/missing_token","paths/~1customers~1{customer_id}~1bank-account/post/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1customers~1{customer_id}~1bank-account/post/responses/401/content/application~1problem+json/examples/token_expired"]}}},{"code":"403","schemaId":"schema_23","exampleIds":["paths/~1customers~1{customer_id}~1bank-account/post/responses/403/content/application~1problem+json/examples/forbidden"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_23","exampleIds":["paths/~1customers~1{customer_id}~1bank-account/post/responses/403/content/application~1problem+json/examples/forbidden"]}}},{"code":"422","schemaId":"schema_32","exampleIds":["paths/~1customers~1{customer_id}~1bank-account/post/responses/422/content/application~1problem+json/examples/validation_failed","paths/~1customers~1{customer_id}~1bank-account/post/responses/422/content/application~1problem+json/examples/no_user"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_32","exampleIds":["paths/~1customers~1{customer_id}~1bank-account/post/responses/422/content/application~1problem+json/examples/validation_failed","paths/~1customers~1{customer_id}~1bank-account/post/responses/422/content/application~1problem+json/examples/no_user"]}}},{"code":"429","schemaId":"schema_3","exampleIds":["paths/~1customers~1{customer_id}~1bank-account/post/responses/429/content/application~1problem+json/example"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_3","exampleIds":["paths/~1customers~1{customer_id}~1bank-account/post/responses/429/content/application~1problem+json/example"]}}},{"code":"500","schemaId":"schema_5","exampleIds":["paths/~1customers~1{customer_id}~1bank-account/post/responses/500/content/application~1problem+json/example"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_5","exampleIds":["paths/~1customers~1{customer_id}~1bank-account/post/responses/500/content/application~1problem+json/example"]}}}],"examples":[]}]}]}]},"httpPath":"/customers/{customer_id}/bank-account"},{"label":"List banks","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/en-us/apis/openapi/customers/listbanks","routeSlug":"/en-us/apis/openapi/customers/listbanks","metadata":{"seo":{"title":"List banks","description":"GET /banks"}},"content":{"contentType":"item","itemVariant":"httpItem","meta":{"sourceId":"listBanks","name":"List banks","isWebhook":false,"pointer":"/paths/~1banks/get","hasSamples":false},"children":[{"nodeType":"container","children":[{"nodeType":"header","level":2,"label":"List banks","isWebhook":false,"showPageActions":true}],"panels":[]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Request","labelTranslationKey":"request","deepLinkSuffix":"request"},{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"tag","tag":"html","attributes":{"name":"div","attrs":{"className":"endpoint-url"}},"children":[{"$$mdtype":"Node","type":"tag","tag":"html","attributes":{"name":"span","attrs":{"className":"mb mb--get"}},"children":[{"$$mdtype":"Node","type":"text","attributes":{"content":"GET"},"children":[]}]},{"$$mdtype":"Node","type":"text","attributes":{"content":" /banks"},"children":[]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"List banks available for customer bank account submission"},"children":[]}]}]}]},{"nodeType":"security","requirements":[{"schemes":[{"name":"oauth2","scopes":["kyc:read"],"type":"oauth2","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"OAuth2 Client Credentials flow for obtaining access tokens."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Use "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"client_id"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" and "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"client_secret"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" to authenticate."},"children":[]}]}]}],"flows":{"clientCredentials":{"tokenUrl":"/api/v3/auth/token","scopes":{"kyc:read":"Read a customer's KYC state (requirements, attachments, status).","kyc:upload":"Upload a KYC attachment (document or selfie via the dedicated route).","kyc:submit":"Submit a customer's KYC bundle for review.","biometrics:create":"Mint a biometrics capture session for a customer (partner side of the handoff).","biometrics:exchange":"Exchange a biometrics bootstrap code for a scoped session token (kyc-app side of the handoff)."}}}}]}]}],"panels":[{"children":[{"kind":"code-sample","source":{"kind":"code-sample","operationType":"http","method":"GET","path":"/banks","servers":[{"url":"/_mock/en-us/apis/openapi","description":"Mock server","isMockServer":true},{"url":"https://api.dinie.com/api/v3","description":"Production"},{"url":"https://api-dev.dinietech.io/api/v3","description":"Sandbox"}],"parameters":{"path":[],"query":[],"querystring":[],"header":[],"cookie":[]},"security":[{"schemes":[{"id":"oauth2","type":"oauth2","flows":{"clientCredentials":{"tokenUrl":"/api/v3/auth/token","scopes":{"kyc:read":"Read a customer's KYC state (requirements, attachments, status).","kyc:upload":"Upload a KYC attachment (document or selfie via the dedicated route).","kyc:submit":"Submit a customer's KYC bundle for review.","biometrics:create":"Mint a biometrics capture session for a customer (partner side of the handoff).","biometrics:exchange":"Exchange a biometrics bootstrap code for a scoped session token (kyc-app side of the handoff)."}}}}],"scopes":["kyc:read"]}],"responseCodes":["200","401","403","429","500"],"pointer":"/banks","href":"customers/listbanks","openApiOperationId":"listBanks","summary":"List banks"},"isWebhook":false,"hideReplay":false,"servers":[{"url":"/_mock/en-us/apis/openapi","description":"Mock server","isMockServer":true},{"url":"https://api.dinie.com/api/v3","description":"Production"},{"url":"https://api-dev.dinietech.io/api/v3","description":"Sandbox"}],"examples":[]}]}]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Responses","labelTranslationKey":"responses","deepLinkSuffix":"responses"},{"nodeType":"item-content","variant":"responses","responses":[{"code":"200","description":"Banks","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_33"}},"schemaId":"schema_33"},{"code":"401","description":"Authentication failed","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_8","exampleIds":["paths/~1banks/get/responses/401/content/application~1problem+json/examples/missing_token","paths/~1banks/get/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1banks/get/responses/401/content/application~1problem+json/examples/token_expired"]}},"schemaId":"schema_8","exampleIds":["paths/~1banks/get/responses/401/content/application~1problem+json/examples/missing_token","paths/~1banks/get/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1banks/get/responses/401/content/application~1problem+json/examples/token_expired"]},{"code":"403","description":"The credential is not permitted to perform this action","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_23","exampleIds":["paths/~1banks/get/responses/403/content/application~1problem+json/examples/forbidden"]}},"schemaId":"schema_23","exampleIds":["paths/~1banks/get/responses/403/content/application~1problem+json/examples/forbidden"]},{"code":"429","description":"Rate limit exceeded","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_3","exampleIds":["paths/~1banks/get/responses/429/content/application~1problem+json/example"]}},"schemaId":"schema_3","exampleIds":["paths/~1banks/get/responses/429/content/application~1problem+json/example"],"headers":{"Retry-After":{"schema":{"type":"integer"},"description":"Seconds until the rate limit resets"}},"headerSchemaId":"schema_4"},{"code":"500","description":"Internal server error","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_5","exampleIds":["paths/~1banks/get/responses/500/content/application~1problem+json/example"]}},"schemaId":"schema_5","exampleIds":["paths/~1banks/get/responses/500/content/application~1problem+json/example"]}],"pointer":"/paths/~1banks/get/responses"}],"panels":[{"children":[{"kind":"response","responseCodes":[{"code":"200","schemaId":"schema_33","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_33"}}},{"code":"401","schemaId":"schema_8","exampleIds":["paths/~1banks/get/responses/401/content/application~1problem+json/examples/missing_token","paths/~1banks/get/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1banks/get/responses/401/content/application~1problem+json/examples/token_expired"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_8","exampleIds":["paths/~1banks/get/responses/401/content/application~1problem+json/examples/missing_token","paths/~1banks/get/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1banks/get/responses/401/content/application~1problem+json/examples/token_expired"]}}},{"code":"403","schemaId":"schema_23","exampleIds":["paths/~1banks/get/responses/403/content/application~1problem+json/examples/forbidden"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_23","exampleIds":["paths/~1banks/get/responses/403/content/application~1problem+json/examples/forbidden"]}}},{"code":"429","schemaId":"schema_3","exampleIds":["paths/~1banks/get/responses/429/content/application~1problem+json/example"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_3","exampleIds":["paths/~1banks/get/responses/429/content/application~1problem+json/example"]}}},{"code":"500","schemaId":"schema_5","exampleIds":["paths/~1banks/get/responses/500/content/application~1problem+json/example"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_5","exampleIds":["paths/~1banks/get/responses/500/content/application~1problem+json/example"]}}}],"examples":[]}]}]}]},"httpPath":"/banks"},{"label":"Start biometrics","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/en-us/apis/openapi/customers/createbiometricssession","routeSlug":"/en-us/apis/openapi/customers/createbiometricssession","metadata":{"seo":{"title":"Start biometrics","description":"POST /customers/{customer_id}/biometrics"}},"content":{"contentType":"item","itemVariant":"httpItem","meta":{"sourceId":"createBiometricsSession","name":"Start biometrics","isWebhook":false,"pointer":"/paths/~1customers~1{customer_id}~1biometrics/post","hasSamples":true},"children":[{"nodeType":"container","children":[{"nodeType":"header","level":2,"label":"Start biometrics","isWebhook":false,"showPageActions":true}],"panels":[]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Request","labelTranslationKey":"request","deepLinkSuffix":"request"},{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"tag","tag":"html","attributes":{"name":"div","attrs":{"className":"endpoint-url"}},"children":[{"$$mdtype":"Node","type":"tag","tag":"html","attributes":{"name":"span","attrs":{"className":"mb mb--post"}},"children":[{"$$mdtype":"Node","type":"text","attributes":{"content":"POST"},"children":[]}]},{"$$mdtype":"Node","type":"text","attributes":{"content":" /customers/{customer_id}/biometrics"},"children":[]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Create a biometrics capture session"},"children":[]}]}]}]},{"nodeType":"security","requirements":[{"schemes":[{"name":"oauth2","scopes":["biometrics:create"],"type":"oauth2","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"OAuth2 Client Credentials flow for obtaining access tokens."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Use "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"client_id"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" and "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"client_secret"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" to authenticate."},"children":[]}]}]}],"flows":{"clientCredentials":{"tokenUrl":"/api/v3/auth/token","scopes":{"kyc:read":"Read a customer's KYC state (requirements, attachments, status).","kyc:upload":"Upload a KYC attachment (document or selfie via the dedicated route).","kyc:submit":"Submit a customer's KYC bundle for review.","biometrics:create":"Mint a biometrics capture session for a customer (partner side of the handoff).","biometrics:exchange":"Exchange a biometrics bootstrap code for a scoped session token (kyc-app side of the handoff)."}}}}]}]},{"nodeType":"item-content","variant":"path","label":"Path","labelTranslationKey":"path","parameters":[{"name":"customer_id","in":"path","schemaId":"schema_22","description":"Customer ID","required":true}],"pointer":"/paths/~1customers~1{customer_id}~1biometrics/post/parameters"},{"nodeType":"item-content","variant":"body","label":"Request Body","labelTranslationKey":"body","required":false,"mediaTypes":["application/json"],"mediaTypeSchemas":{"application/json":{"schemaId":"schema_34"}},"schemaId":"schema_34","pointer":"/paths/~1customers~1{customer_id}~1biometrics/post/requestBody"}],"panels":[{"children":[{"kind":"code-sample","source":{"kind":"code-sample","operationType":"http","method":"POST","path":"/customers/{customer_id}/biometrics","servers":[{"url":"/_mock/en-us/apis/openapi","description":"Mock server","isMockServer":true},{"url":"https://api.dinie.com/api/v3","description":"Production"},{"url":"https://api-dev.dinietech.io/api/v3","description":"Sandbox"}],"parameters":{"path":[{"name":"customer_id","in":"path","required":true,"example":"cust_550e8400e29b41d4a716446655440000","schemaId":"components/schemas/CustomerId"}],"query":[],"querystring":[],"header":[],"cookie":[]},"security":[{"schemes":[{"id":"oauth2","type":"oauth2","flows":{"clientCredentials":{"tokenUrl":"/api/v3/auth/token","scopes":{"kyc:read":"Read a customer's KYC state (requirements, attachments, status).","kyc:upload":"Upload a KYC attachment (document or selfie via the dedicated route).","kyc:submit":"Submit a customer's KYC bundle for review.","biometrics:create":"Mint a biometrics capture session for a customer (partner side of the handoff).","biometrics:exchange":"Exchange a biometrics bootstrap code for a scoped session token (kyc-app side of the handoff)."}}}}],"scopes":["biometrics:create"]}],"requestBody":{"application/json":{"schemaId":"schema_34"}},"responseCodes":["201","401","403","404","409","422","429","500"],"pointer":"/customers/{customer_id}/biometrics","href":"customers/createbiometricssession","openApiOperationId":"createBiometricsSession","summary":"Start biometrics"},"definitionSamples":[{"lang":"curl","source":"curl -X POST https://api.dinie.com/api/v3/customers/cust_550e8400e29b41d4a716446655440000/biometrics \\\n  -H \"Authorization: Bearer $DINIE_API_TOKEN\"\n"},{"lang":"Python","source":"from dinie import Dinie\n\nclient = Dinie(\n    client_id=\"dinie_ci_abc123\",\n    client_secret=\"dinie_cs_live_xyz789\"\n)\n\n# Generate a biometrics capture session\nsession = client.customers.create_biometrics_session(\n    \"cust_550e8400e29b41d4a716446655440000\"\n)\n\nprint(session.session_url)  # \"https://biometrics.dinie.com.br/session/abc123def456\"\nprint(session.expires_at)   # 1741082400\n# Redirect the customer to session.session_url\n"},{"lang":"Node.js","source":"const { Dinie } = require(\"dinie\");\n\nconst client = new Dinie({\n  clientId: \"dinie_ci_abc123\",\n  clientSecret: \"dinie_cs_live_xyz789\",\n});\n\n// Generate a biometrics capture session\nconst session = await client.customers.createBiometricsSession(\n  \"cust_550e8400e29b41d4a716446655440000\"\n);\n\nconsole.log(session.sessionUrl);  // \"https://biometrics.dinie.com.br/session/abc123def456\"\nconsole.log(session.expiresAt);   // 1741082400\n// Redirect the customer to session.sessionUrl\n"},{"lang":"Ruby","source":"require \"dinie\"\n\nclient = Dinie::Client.new(\n  client_id: \"dinie_ci_abc123\",\n  client_secret: \"dinie_cs_live_xyz789\"\n)\n\n# Generate a biometrics capture session\nsession = client.customers.create_biometrics_session(\n  \"cust_550e8400e29b41d4a716446655440000\"\n)\n\nputs session.session_url  # \"https://biometrics.dinie.com.br/session/abc123def456\"\nputs session.expires_at   # 1741082400\n# Redirect the customer to session.session_url\n"}],"isWebhook":false,"hideReplay":false,"servers":[{"url":"/_mock/en-us/apis/openapi","description":"Mock server","isMockServer":true},{"url":"https://api.dinie.com/api/v3","description":"Production"},{"url":"https://api-dev.dinietech.io/api/v3","description":"Sandbox"}],"schemaId":"schema_34","mediaTypes":["application/json"],"mediaTypeSchemas":{"application/json":{"schemaId":"schema_34"}},"examples":[]}]}]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Responses","labelTranslationKey":"responses","deepLinkSuffix":"responses"},{"nodeType":"item-content","variant":"responses","responses":[{"code":"201","description":"Biometrics session created","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/BiometricsSession","exampleIds":["paths/~1customers~1{customer_id}~1biometrics/post/responses/201/content/application~1json/example"]}},"schemaId":"components/schemas/BiometricsSession","exampleIds":["paths/~1customers~1{customer_id}~1biometrics/post/responses/201/content/application~1json/example"]},{"code":"401","description":"Authentication failed","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_8","exampleIds":["paths/~1customers~1{customer_id}~1biometrics/post/responses/401/content/application~1problem+json/examples/missing_token","paths/~1customers~1{customer_id}~1biometrics/post/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1customers~1{customer_id}~1biometrics/post/responses/401/content/application~1problem+json/examples/token_expired"]}},"schemaId":"schema_8","exampleIds":["paths/~1customers~1{customer_id}~1biometrics/post/responses/401/content/application~1problem+json/examples/missing_token","paths/~1customers~1{customer_id}~1biometrics/post/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1customers~1{customer_id}~1biometrics/post/responses/401/content/application~1problem+json/examples/token_expired"]},{"code":"403","description":"The credential is not permitted to perform this action","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_23","exampleIds":["paths/~1customers~1{customer_id}~1biometrics/post/responses/403/content/application~1problem+json/examples/forbidden"]}},"schemaId":"schema_23","exampleIds":["paths/~1customers~1{customer_id}~1biometrics/post/responses/403/content/application~1problem+json/examples/forbidden"]},{"code":"404","description":"Resource not found","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_24","exampleIds":["paths/~1customers~1{customer_id}~1biometrics/post/responses/404/content/application~1problem+json/examples/customer_not_found"]}},"schemaId":"schema_24","exampleIds":["paths/~1customers~1{customer_id}~1biometrics/post/responses/404/content/application~1problem+json/examples/customer_not_found"]},{"code":"409","description":"Conflict","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_35","exampleIds":["paths/~1customers~1{customer_id}~1biometrics/post/responses/409/content/application~1problem+json/examples/session_already_active"]}},"schemaId":"schema_35","exampleIds":["paths/~1customers~1{customer_id}~1biometrics/post/responses/409/content/application~1problem+json/examples/session_already_active"]},{"code":"422","description":"Validation failed","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_36","exampleIds":["paths/~1customers~1{customer_id}~1biometrics/post/responses/422/content/application~1problem+json/examples/biometrics_not_required"]}},"schemaId":"schema_36","exampleIds":["paths/~1customers~1{customer_id}~1biometrics/post/responses/422/content/application~1problem+json/examples/biometrics_not_required"]},{"code":"429","description":"Rate limit exceeded","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_3","exampleIds":["paths/~1customers~1{customer_id}~1biometrics/post/responses/429/content/application~1problem+json/example"]}},"schemaId":"schema_3","exampleIds":["paths/~1customers~1{customer_id}~1biometrics/post/responses/429/content/application~1problem+json/example"],"headers":{"Retry-After":{"schema":{"type":"integer"},"description":"Seconds until the rate limit resets"}},"headerSchemaId":"schema_4"},{"code":"500","description":"Internal server error","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_5","exampleIds":["paths/~1customers~1{customer_id}~1biometrics/post/responses/500/content/application~1problem+json/example"]}},"schemaId":"schema_5","exampleIds":["paths/~1customers~1{customer_id}~1biometrics/post/responses/500/content/application~1problem+json/example"]}],"pointer":"/paths/~1customers~1{customer_id}~1biometrics/post/responses"}],"panels":[{"children":[{"kind":"response","responseCodes":[{"code":"201","schemaId":"components/schemas/BiometricsSession","exampleIds":["paths/~1customers~1{customer_id}~1biometrics/post/responses/201/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/BiometricsSession","exampleIds":["paths/~1customers~1{customer_id}~1biometrics/post/responses/201/content/application~1json/example"]}}},{"code":"401","schemaId":"schema_8","exampleIds":["paths/~1customers~1{customer_id}~1biometrics/post/responses/401/content/application~1problem+json/examples/missing_token","paths/~1customers~1{customer_id}~1biometrics/post/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1customers~1{customer_id}~1biometrics/post/responses/401/content/application~1problem+json/examples/token_expired"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_8","exampleIds":["paths/~1customers~1{customer_id}~1biometrics/post/responses/401/content/application~1problem+json/examples/missing_token","paths/~1customers~1{customer_id}~1biometrics/post/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1customers~1{customer_id}~1biometrics/post/responses/401/content/application~1problem+json/examples/token_expired"]}}},{"code":"403","schemaId":"schema_23","exampleIds":["paths/~1customers~1{customer_id}~1biometrics/post/responses/403/content/application~1problem+json/examples/forbidden"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_23","exampleIds":["paths/~1customers~1{customer_id}~1biometrics/post/responses/403/content/application~1problem+json/examples/forbidden"]}}},{"code":"404","schemaId":"schema_24","exampleIds":["paths/~1customers~1{customer_id}~1biometrics/post/responses/404/content/application~1problem+json/examples/customer_not_found"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_24","exampleIds":["paths/~1customers~1{customer_id}~1biometrics/post/responses/404/content/application~1problem+json/examples/customer_not_found"]}}},{"code":"409","schemaId":"schema_35","exampleIds":["paths/~1customers~1{customer_id}~1biometrics/post/responses/409/content/application~1problem+json/examples/session_already_active"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_35","exampleIds":["paths/~1customers~1{customer_id}~1biometrics/post/responses/409/content/application~1problem+json/examples/session_already_active"]}}},{"code":"422","schemaId":"schema_36","exampleIds":["paths/~1customers~1{customer_id}~1biometrics/post/responses/422/content/application~1problem+json/examples/biometrics_not_required"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_36","exampleIds":["paths/~1customers~1{customer_id}~1biometrics/post/responses/422/content/application~1problem+json/examples/biometrics_not_required"]}}},{"code":"429","schemaId":"schema_3","exampleIds":["paths/~1customers~1{customer_id}~1biometrics/post/responses/429/content/application~1problem+json/example"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_3","exampleIds":["paths/~1customers~1{customer_id}~1biometrics/post/responses/429/content/application~1problem+json/example"]}}},{"code":"500","schemaId":"schema_5","exampleIds":["paths/~1customers~1{customer_id}~1biometrics/post/responses/500/content/application~1problem+json/example"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_5","exampleIds":["paths/~1customers~1{customer_id}~1biometrics/post/responses/500/content/application~1problem+json/example"]}}}],"examples":[]}]}]}]},"httpPath":"/customers/{customer_id}/biometrics"},{"type":"separator","label":"Webhooks","variant":"secondary","content":null},{"label":"Customer created","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":true,"type":"link","link":"/en-us/apis/openapi/customers/oncustomercreated","routeSlug":"/en-us/apis/openapi/customers/oncustomercreated","metadata":{"seo":{"title":"Customer created","description":"Fires when the customer reaches pending_kyc status after async enrichment completes.Includes the full enriched data (trading_name, KYC requirements).This is the moment to start collecting KYC documents from the customer."}},"content":{"contentType":"item","itemVariant":"httpItem","meta":{"sourceId":"onCustomerCreated","name":"Customer created","isWebhook":true,"pointer":"/paths/customer.created/post","hasSamples":true},"children":[{"nodeType":"container","children":[{"nodeType":"header","level":2,"label":"Customer created","isWebhook":true,"showPageActions":true}],"panels":[]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Request","labelTranslationKey":"request","deepLinkSuffix":"request"},{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Fires when the customer reaches "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"pending_kyc"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" status after async enrichment completes."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Includes the full enriched data ("},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"trading_name"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", KYC requirements)."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"This is the moment to start collecting KYC documents from the customer."},"children":[]}]}]}]},{"nodeType":"security","requirements":[{"schemes":[{"name":"webhookSignature","scopes":[],"type":"apiKey","in":"header","paramName":"webhook-signature","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"HMAC-SHA256 signature per the Standard Webhooks specification."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Verify using the "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"whsec_"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"-prefixed secret from endpoint creation."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The header contains base64-encoded signatures; the signed content"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"is "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"{webhook-id}.{webhook-timestamp}.{body}"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]}]}]}]},{"nodeType":"item-content","variant":"headers","label":"Headers","labelTranslationKey":"header","parameters":[{"name":"webhook-id","in":"header","schemaId":"schema_37","description":"Unique delivery ID. Use as idempotency key to deduplicate events","required":true},{"name":"webhook-timestamp","in":"header","schemaId":"schema_38","description":"Unix timestamp of the delivery attempt. Reject if older than 5 minutes (replay protection)","required":true},{"name":"webhook-signature","in":"header","schemaId":"schema_6","description":"HMAC-SHA256 signature(s) for verification per Standard Webhooks spec","required":true}],"pointer":"/paths/customer.created/post/parameters"},{"nodeType":"item-content","variant":"body","label":"Request Body","labelTranslationKey":"body","required":true,"isEvent":true,"mediaTypes":["application/json"],"mediaTypeSchemas":{"application/json":{"schemaId":"components/schemas/WebhookEvent_CustomerCreated","exampleIds":["paths/customer.created/post/requestBody/content/application~1json/example"]}},"schemaId":"components/schemas/WebhookEvent_CustomerCreated","exampleIds":["paths/customer.created/post/requestBody/content/application~1json/example"],"pointer":"/paths/customer.created/post/requestBody"}],"panels":[{"children":[{"kind":"code-sample","source":{"kind":"code-sample","operationType":"webhook","method":"POST","path":"customer.created","servers":[{"url":"/_mock/en-us/apis/openapi","description":"Mock server","isMockServer":true},{"url":"https://api.dinie.com/api/v3","description":"Production"},{"url":"https://api-dev.dinietech.io/api/v3","description":"Sandbox"}],"parameters":{"path":[],"query":[],"querystring":[],"header":[{"name":"webhook-id","in":"header","required":true,"example":"evt_550e8400e29b41d4a716446655440000","schemaId":"components/schemas/EventId"},{"name":"webhook-timestamp","in":"header","required":true,"schemaId":"schema_38"},{"name":"webhook-signature","in":"header","required":true,"schemaId":"schema_6"}],"cookie":[]},"security":[{"schemes":[{"id":"webhookSignature","type":"apiKey","name":"webhook-signature","in":"header"}],"scopes":[]}],"requestBody":{"application/json":{"schemaId":"components/schemas/WebhookEvent_CustomerCreated","exampleIds":["paths/customer.created/post/requestBody/content/application~1json/example"]}},"responseCodes":["200","410","429","502","504","4XX","5XX"],"pointer":"customer.created","href":"customers/oncustomercreated","openApiOperationId":"onCustomerCreated","summary":"Customer created"},"isWebhook":true,"hideReplay":false,"servers":[{"url":"/_mock/en-us/apis/openapi","description":"Mock server","isMockServer":true},{"url":"https://api.dinie.com/api/v3","description":"Production"},{"url":"https://api-dev.dinietech.io/api/v3","description":"Sandbox"}],"schemaId":"components/schemas/WebhookEvent_CustomerCreated","exampleIds":["paths/customer.created/post/requestBody/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeSchemas":{"application/json":{"schemaId":"components/schemas/WebhookEvent_CustomerCreated","exampleIds":["paths/customer.created/post/requestBody/content/application~1json/example"]}},"examples":[{}]}]}]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Responses","labelTranslationKey":"responses","deepLinkSuffix":"responses"},{"nodeType":"item-content","variant":"responses","responses":[{"code":"200","description":"Delivery confirmed"},{"code":"410","description":"Endpoint permanently disabled"},{"code":"429","description":"Rate-limiting, send rate reduced"},{"code":"502","description":"Server overload, rate reduced before retrying"},{"code":"504","description":"Gateway timeout, rate reduced before retrying"},{"code":"4XX","description":"Client error, failure triggers retry"},{"code":"5XX","description":"Server error, failure triggers retry"}],"pointer":"/paths/customer.created/post/responses"}],"panels":[]}]},"httpPath":"customer.created"},{"label":"Customer under review","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":true,"type":"link","link":"/en-us/apis/openapi/customers/oncustomerunderreview","routeSlug":"/en-us/apis/openapi/customers/oncustomerunderreview","metadata":{"seo":{"title":"Customer under review","description":"Fires when all required KYC documents have been submitted and the credit reviewis started by Dinie. Includes the customer ID and under_review status.Use it to update the status in your system and inform the customer that the review is in progress."}},"content":{"contentType":"item","itemVariant":"httpItem","meta":{"sourceId":"onCustomerUnderReview","name":"Customer under review","isWebhook":true,"pointer":"/paths/customer.under_review/post","hasSamples":true},"children":[{"nodeType":"container","children":[{"nodeType":"header","level":2,"label":"Customer under review","isWebhook":true,"showPageActions":true}],"panels":[]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Request","labelTranslationKey":"request","deepLinkSuffix":"request"},{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Fires when all required KYC documents have been submitted and the credit review"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"is started by Dinie. Includes the customer ID and "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"under_review"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" status."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Use it to update the status in your system and inform the customer that the review is in progress."},"children":[]}]}]}]},{"nodeType":"security","requirements":[{"schemes":[{"name":"webhookSignature","scopes":[],"type":"apiKey","in":"header","paramName":"webhook-signature","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"HMAC-SHA256 signature per the Standard Webhooks specification."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Verify using the "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"whsec_"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"-prefixed secret from endpoint creation."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The header contains base64-encoded signatures; the signed content"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"is "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"{webhook-id}.{webhook-timestamp}.{body}"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]}]}]}]},{"nodeType":"item-content","variant":"headers","label":"Headers","labelTranslationKey":"header","parameters":[{"name":"webhook-id","in":"header","schemaId":"schema_37","description":"Unique delivery ID. Use as idempotency key to deduplicate events","required":true},{"name":"webhook-timestamp","in":"header","schemaId":"schema_38","description":"Unix timestamp of the delivery attempt. Reject if older than 5 minutes (replay protection)","required":true},{"name":"webhook-signature","in":"header","schemaId":"schema_6","description":"HMAC-SHA256 signature(s) for verification per Standard Webhooks spec","required":true}],"pointer":"/paths/customer.under_review/post/parameters"},{"nodeType":"item-content","variant":"body","label":"Request Body","labelTranslationKey":"body","required":true,"isEvent":true,"mediaTypes":["application/json"],"mediaTypeSchemas":{"application/json":{"schemaId":"components/schemas/WebhookEvent_CustomerStatus","exampleIds":["paths/customer.under_review/post/requestBody/content/application~1json/example"]}},"schemaId":"components/schemas/WebhookEvent_CustomerStatus","exampleIds":["paths/customer.under_review/post/requestBody/content/application~1json/example"],"pointer":"/paths/customer.under_review/post/requestBody"}],"panels":[{"children":[{"kind":"code-sample","source":{"kind":"code-sample","operationType":"webhook","method":"POST","path":"customer.under_review","servers":[{"url":"/_mock/en-us/apis/openapi","description":"Mock server","isMockServer":true},{"url":"https://api.dinie.com/api/v3","description":"Production"},{"url":"https://api-dev.dinietech.io/api/v3","description":"Sandbox"}],"parameters":{"path":[],"query":[],"querystring":[],"header":[{"name":"webhook-id","in":"header","required":true,"example":"evt_550e8400e29b41d4a716446655440000","schemaId":"components/schemas/EventId"},{"name":"webhook-timestamp","in":"header","required":true,"schemaId":"schema_38"},{"name":"webhook-signature","in":"header","required":true,"schemaId":"schema_6"}],"cookie":[]},"security":[{"schemes":[{"id":"webhookSignature","type":"apiKey","name":"webhook-signature","in":"header"}],"scopes":[]}],"requestBody":{"application/json":{"schemaId":"components/schemas/WebhookEvent_CustomerStatus","exampleIds":["paths/customer.under_review/post/requestBody/content/application~1json/example"]}},"responseCodes":["200","410","429","502","504","4XX","5XX"],"pointer":"customer.under_review","href":"customers/oncustomerunderreview","openApiOperationId":"onCustomerUnderReview","summary":"Customer under review"},"isWebhook":true,"hideReplay":false,"servers":[{"url":"/_mock/en-us/apis/openapi","description":"Mock server","isMockServer":true},{"url":"https://api.dinie.com/api/v3","description":"Production"},{"url":"https://api-dev.dinietech.io/api/v3","description":"Sandbox"}],"schemaId":"components/schemas/WebhookEvent_CustomerStatus","exampleIds":["paths/customer.under_review/post/requestBody/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeSchemas":{"application/json":{"schemaId":"components/schemas/WebhookEvent_CustomerStatus","exampleIds":["paths/customer.under_review/post/requestBody/content/application~1json/example"]}},"examples":[{}]}]}]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Responses","labelTranslationKey":"responses","deepLinkSuffix":"responses"},{"nodeType":"item-content","variant":"responses","responses":[{"code":"200","description":"Delivery confirmed"},{"code":"410","description":"Endpoint permanently disabled"},{"code":"429","description":"Rate-limiting, send rate reduced"},{"code":"502","description":"Server overload, rate reduced before retrying"},{"code":"504","description":"Gateway timeout, rate reduced before retrying"},{"code":"4XX","description":"Client error, failure triggers retry"},{"code":"5XX","description":"Server error, failure triggers retry"}],"pointer":"/paths/customer.under_review/post/responses"}],"panels":[]}]},"httpPath":"customer.under_review"},{"label":"Customer KYC updated","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":true,"type":"link","link":"/en-us/apis/openapi/customers/oncustomerkycupdated","routeSlug":"/en-us/apis/openapi/customers/oncustomerkycupdated","metadata":{"seo":{"title":"Customer KYC updated","description":"Fires when any KYC requirement changes status (approved, rejected, orpending correction). Includes the full kyc array with the updated status ofeach item. Use it to identify rejected documents and request resubmission from the customervia PATCH /customers/{id} or POST /customers/{id}/kyc-attachments."}},"content":{"contentType":"item","itemVariant":"httpItem","meta":{"sourceId":"onCustomerKycUpdated","name":"Customer KYC updated","isWebhook":true,"pointer":"/paths/customer.kyc_updated/post","hasSamples":true},"children":[{"nodeType":"container","children":[{"nodeType":"header","level":2,"label":"Customer KYC updated","isWebhook":true,"showPageActions":true}],"panels":[]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Request","labelTranslationKey":"request","deepLinkSuffix":"request"},{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Fires when any KYC requirement changes status (approved, rejected, or"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"pending correction). Includes the full "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"kyc"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" array with the updated status of"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"each item. Use it to identify rejected documents and request resubmission from the customer"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"via "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"PATCH /customers/{id}"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" or "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"POST /customers/{id}/kyc-attachments"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]}]},{"nodeType":"security","requirements":[{"schemes":[{"name":"webhookSignature","scopes":[],"type":"apiKey","in":"header","paramName":"webhook-signature","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"HMAC-SHA256 signature per the Standard Webhooks specification."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Verify using the "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"whsec_"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"-prefixed secret from endpoint creation."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The header contains base64-encoded signatures; the signed content"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"is "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"{webhook-id}.{webhook-timestamp}.{body}"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]}]}]}]},{"nodeType":"item-content","variant":"headers","label":"Headers","labelTranslationKey":"header","parameters":[{"name":"webhook-id","in":"header","schemaId":"schema_37","description":"Unique delivery ID. Use as idempotency key to deduplicate events","required":true},{"name":"webhook-timestamp","in":"header","schemaId":"schema_38","description":"Unix timestamp of the delivery attempt. Reject if older than 5 minutes (replay protection)","required":true},{"name":"webhook-signature","in":"header","schemaId":"schema_6","description":"HMAC-SHA256 signature(s) for verification per Standard Webhooks spec","required":true}],"pointer":"/paths/customer.kyc_updated/post/parameters"},{"nodeType":"item-content","variant":"body","label":"Request Body","labelTranslationKey":"body","required":true,"isEvent":true,"mediaTypes":["application/json"],"mediaTypeSchemas":{"application/json":{"schemaId":"components/schemas/WebhookEvent_CustomerKycUpdated","exampleIds":["paths/customer.kyc_updated/post/requestBody/content/application~1json/example"]}},"schemaId":"components/schemas/WebhookEvent_CustomerKycUpdated","exampleIds":["paths/customer.kyc_updated/post/requestBody/content/application~1json/example"],"pointer":"/paths/customer.kyc_updated/post/requestBody"}],"panels":[{"children":[{"kind":"code-sample","source":{"kind":"code-sample","operationType":"webhook","method":"POST","path":"customer.kyc_updated","servers":[{"url":"/_mock/en-us/apis/openapi","description":"Mock server","isMockServer":true},{"url":"https://api.dinie.com/api/v3","description":"Production"},{"url":"https://api-dev.dinietech.io/api/v3","description":"Sandbox"}],"parameters":{"path":[],"query":[],"querystring":[],"header":[{"name":"webhook-id","in":"header","required":true,"example":"evt_550e8400e29b41d4a716446655440000","schemaId":"components/schemas/EventId"},{"name":"webhook-timestamp","in":"header","required":true,"schemaId":"schema_38"},{"name":"webhook-signature","in":"header","required":true,"schemaId":"schema_6"}],"cookie":[]},"security":[{"schemes":[{"id":"webhookSignature","type":"apiKey","name":"webhook-signature","in":"header"}],"scopes":[]}],"requestBody":{"application/json":{"schemaId":"components/schemas/WebhookEvent_CustomerKycUpdated","exampleIds":["paths/customer.kyc_updated/post/requestBody/content/application~1json/example"]}},"responseCodes":["200","410","429","502","504","4XX","5XX"],"pointer":"customer.kyc_updated","href":"customers/oncustomerkycupdated","openApiOperationId":"onCustomerKycUpdated","summary":"Customer KYC updated"},"isWebhook":true,"hideReplay":false,"servers":[{"url":"/_mock/en-us/apis/openapi","description":"Mock server","isMockServer":true},{"url":"https://api.dinie.com/api/v3","description":"Production"},{"url":"https://api-dev.dinietech.io/api/v3","description":"Sandbox"}],"schemaId":"components/schemas/WebhookEvent_CustomerKycUpdated","exampleIds":["paths/customer.kyc_updated/post/requestBody/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeSchemas":{"application/json":{"schemaId":"components/schemas/WebhookEvent_CustomerKycUpdated","exampleIds":["paths/customer.kyc_updated/post/requestBody/content/application~1json/example"]}},"examples":[{}]}]}]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Responses","labelTranslationKey":"responses","deepLinkSuffix":"responses"},{"nodeType":"item-content","variant":"responses","responses":[{"code":"200","description":"Delivery confirmed"},{"code":"410","description":"Endpoint permanently disabled"},{"code":"429","description":"Rate-limiting, send rate reduced"},{"code":"502","description":"Server overload, rate reduced before retrying"},{"code":"504","description":"Gateway timeout, rate reduced before retrying"},{"code":"4XX","description":"Client error, failure triggers retry"},{"code":"5XX","description":"Server error, failure triggers retry"}],"pointer":"/paths/customer.kyc_updated/post/responses"}],"panels":[]}]},"httpPath":"customer.kyc_updated"},{"label":"Customer active","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":true,"type":"link","link":"/en-us/apis/openapi/customers/oncustomeractive","routeSlug":"/en-us/apis/openapi/customers/oncustomeractive","metadata":{"seo":{"title":"Customer active","description":"Fires when the customer is fully verified (KYC approved) — registration is complete.Note: active means KYC complete, NOT credit eligible. Eligibility is determinedby CreditOffer availability. Includes the customer ID and active status. QueryGET /customers/{id}/credit-offers to check for available pre-approved offers."}},"content":{"contentType":"item","itemVariant":"httpItem","meta":{"sourceId":"onCustomerActive","name":"Customer active","isWebhook":true,"pointer":"/paths/customer.active/post","hasSamples":true},"children":[{"nodeType":"container","children":[{"nodeType":"header","level":2,"label":"Customer active","isWebhook":true,"showPageActions":true}],"panels":[]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Request","labelTranslationKey":"request","deepLinkSuffix":"request"},{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Fires when the customer is fully verified (KYC approved) — registration is complete."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Note: "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"active"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" means KYC complete, NOT credit eligible. Eligibility is determined"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"by CreditOffer availability. Includes the customer ID and "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"active"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" status. Query"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"GET /customers/{id}/credit-offers"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" to check for available pre-approved offers."},"children":[]}]}]}]},{"nodeType":"security","requirements":[{"schemes":[{"name":"webhookSignature","scopes":[],"type":"apiKey","in":"header","paramName":"webhook-signature","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"HMAC-SHA256 signature per the Standard Webhooks specification."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Verify using the "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"whsec_"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"-prefixed secret from endpoint creation."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The header contains base64-encoded signatures; the signed content"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"is "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"{webhook-id}.{webhook-timestamp}.{body}"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]}]}]}]},{"nodeType":"item-content","variant":"headers","label":"Headers","labelTranslationKey":"header","parameters":[{"name":"webhook-id","in":"header","schemaId":"schema_37","description":"Unique delivery ID. Use as idempotency key to deduplicate events","required":true},{"name":"webhook-timestamp","in":"header","schemaId":"schema_38","description":"Unix timestamp of the delivery attempt. Reject if older than 5 minutes (replay protection)","required":true},{"name":"webhook-signature","in":"header","schemaId":"schema_6","description":"HMAC-SHA256 signature(s) for verification per Standard Webhooks spec","required":true}],"pointer":"/paths/customer.active/post/parameters"},{"nodeType":"item-content","variant":"body","label":"Request Body","labelTranslationKey":"body","required":true,"isEvent":true,"mediaTypes":["application/json"],"mediaTypeSchemas":{"application/json":{"schemaId":"components/schemas/WebhookEvent_CustomerStatus","exampleIds":["paths/customer.active/post/requestBody/content/application~1json/example"]}},"schemaId":"components/schemas/WebhookEvent_CustomerStatus","exampleIds":["paths/customer.active/post/requestBody/content/application~1json/example"],"pointer":"/paths/customer.active/post/requestBody"}],"panels":[{"children":[{"kind":"code-sample","source":{"kind":"code-sample","operationType":"webhook","method":"POST","path":"customer.active","servers":[{"url":"/_mock/en-us/apis/openapi","description":"Mock server","isMockServer":true},{"url":"https://api.dinie.com/api/v3","description":"Production"},{"url":"https://api-dev.dinietech.io/api/v3","description":"Sandbox"}],"parameters":{"path":[],"query":[],"querystring":[],"header":[{"name":"webhook-id","in":"header","required":true,"example":"evt_550e8400e29b41d4a716446655440000","schemaId":"components/schemas/EventId"},{"name":"webhook-timestamp","in":"header","required":true,"schemaId":"schema_38"},{"name":"webhook-signature","in":"header","required":true,"schemaId":"schema_6"}],"cookie":[]},"security":[{"schemes":[{"id":"webhookSignature","type":"apiKey","name":"webhook-signature","in":"header"}],"scopes":[]}],"requestBody":{"application/json":{"schemaId":"components/schemas/WebhookEvent_CustomerStatus","exampleIds":["paths/customer.active/post/requestBody/content/application~1json/example"]}},"responseCodes":["200","410","429","502","504","4XX","5XX"],"pointer":"customer.active","href":"customers/oncustomeractive","openApiOperationId":"onCustomerActive","summary":"Customer active"},"isWebhook":true,"hideReplay":false,"servers":[{"url":"/_mock/en-us/apis/openapi","description":"Mock server","isMockServer":true},{"url":"https://api.dinie.com/api/v3","description":"Production"},{"url":"https://api-dev.dinietech.io/api/v3","description":"Sandbox"}],"schemaId":"components/schemas/WebhookEvent_CustomerStatus","exampleIds":["paths/customer.active/post/requestBody/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeSchemas":{"application/json":{"schemaId":"components/schemas/WebhookEvent_CustomerStatus","exampleIds":["paths/customer.active/post/requestBody/content/application~1json/example"]}},"examples":[{}]}]}]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Responses","labelTranslationKey":"responses","deepLinkSuffix":"responses"},{"nodeType":"item-content","variant":"responses","responses":[{"code":"200","description":"Delivery confirmed"},{"code":"410","description":"Endpoint permanently disabled"},{"code":"429","description":"Rate-limiting, send rate reduced"},{"code":"502","description":"Server overload, rate reduced before retrying"},{"code":"504","description":"Gateway timeout, rate reduced before retrying"},{"code":"4XX","description":"Client error, failure triggers retry"},{"code":"5XX","description":"Server error, failure triggers retry"}],"pointer":"/paths/customer.active/post/responses"}],"panels":[]}]},"httpPath":"customer.active"},{"label":"Customer denied","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":true,"type":"link","link":"/en-us/apis/openapi/customers/oncustomerdenied","routeSlug":"/en-us/apis/openapi/customers/oncustomerdenied","metadata":{"seo":{"title":"Customer denied","description":"Fires when the customer is permanently blocked (fraud, closed company atReceita Federal, or other terminal condition). This is a terminal state —the customer cannot proceed. Includes the customer ID and denied status."}},"content":{"contentType":"item","itemVariant":"httpItem","meta":{"sourceId":"onCustomerDenied","name":"Customer denied","isWebhook":true,"pointer":"/paths/customer.denied/post","hasSamples":true},"children":[{"nodeType":"container","children":[{"nodeType":"header","level":2,"label":"Customer denied","isWebhook":true,"showPageActions":true}],"panels":[]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Request","labelTranslationKey":"request","deepLinkSuffix":"request"},{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Fires when the customer is permanently blocked (fraud, closed company at"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Receita Federal, or other terminal condition). This is a terminal state —"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"the customer cannot proceed. Includes the customer ID and "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"denied"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" status."},"children":[]}]}]}]},{"nodeType":"security","requirements":[{"schemes":[{"name":"webhookSignature","scopes":[],"type":"apiKey","in":"header","paramName":"webhook-signature","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"HMAC-SHA256 signature per the Standard Webhooks specification."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Verify using the "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"whsec_"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"-prefixed secret from endpoint creation."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The header contains base64-encoded signatures; the signed content"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"is "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"{webhook-id}.{webhook-timestamp}.{body}"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]}]}]}]},{"nodeType":"item-content","variant":"headers","label":"Headers","labelTranslationKey":"header","parameters":[{"name":"webhook-id","in":"header","schemaId":"schema_37","description":"Unique delivery ID. Use as idempotency key to deduplicate events","required":true},{"name":"webhook-timestamp","in":"header","schemaId":"schema_38","description":"Unix timestamp of the delivery attempt. Reject if older than 5 minutes (replay protection)","required":true},{"name":"webhook-signature","in":"header","schemaId":"schema_6","description":"HMAC-SHA256 signature(s) for verification per Standard Webhooks spec","required":true}],"pointer":"/paths/customer.denied/post/parameters"},{"nodeType":"item-content","variant":"body","label":"Request Body","labelTranslationKey":"body","required":true,"isEvent":true,"mediaTypes":["application/json"],"mediaTypeSchemas":{"application/json":{"schemaId":"components/schemas/WebhookEvent_CustomerDenied","exampleIds":["paths/customer.denied/post/requestBody/content/application~1json/example"]}},"schemaId":"components/schemas/WebhookEvent_CustomerDenied","exampleIds":["paths/customer.denied/post/requestBody/content/application~1json/example"],"pointer":"/paths/customer.denied/post/requestBody"}],"panels":[{"children":[{"kind":"code-sample","source":{"kind":"code-sample","operationType":"webhook","method":"POST","path":"customer.denied","servers":[{"url":"/_mock/en-us/apis/openapi","description":"Mock server","isMockServer":true},{"url":"https://api.dinie.com/api/v3","description":"Production"},{"url":"https://api-dev.dinietech.io/api/v3","description":"Sandbox"}],"parameters":{"path":[],"query":[],"querystring":[],"header":[{"name":"webhook-id","in":"header","required":true,"example":"evt_550e8400e29b41d4a716446655440000","schemaId":"components/schemas/EventId"},{"name":"webhook-timestamp","in":"header","required":true,"schemaId":"schema_38"},{"name":"webhook-signature","in":"header","required":true,"schemaId":"schema_6"}],"cookie":[]},"security":[{"schemes":[{"id":"webhookSignature","type":"apiKey","name":"webhook-signature","in":"header"}],"scopes":[]}],"requestBody":{"application/json":{"schemaId":"components/schemas/WebhookEvent_CustomerDenied","exampleIds":["paths/customer.denied/post/requestBody/content/application~1json/example"]}},"responseCodes":["200","410","429","502","504","4XX","5XX"],"pointer":"customer.denied","href":"customers/oncustomerdenied","openApiOperationId":"onCustomerDenied","summary":"Customer denied"},"isWebhook":true,"hideReplay":false,"servers":[{"url":"/_mock/en-us/apis/openapi","description":"Mock server","isMockServer":true},{"url":"https://api.dinie.com/api/v3","description":"Production"},{"url":"https://api-dev.dinietech.io/api/v3","description":"Sandbox"}],"schemaId":"components/schemas/WebhookEvent_CustomerDenied","exampleIds":["paths/customer.denied/post/requestBody/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeSchemas":{"application/json":{"schemaId":"components/schemas/WebhookEvent_CustomerDenied","exampleIds":["paths/customer.denied/post/requestBody/content/application~1json/example"]}},"examples":[{}]}]}]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Responses","labelTranslationKey":"responses","deepLinkSuffix":"responses"},{"nodeType":"item-content","variant":"responses","responses":[{"code":"200","description":"Delivery confirmed"},{"code":"410","description":"Endpoint permanently disabled"},{"code":"429","description":"Rate-limiting, send rate reduced"},{"code":"502","description":"Server overload, rate reduced before retrying"},{"code":"504","description":"Gateway timeout, rate reduced before retrying"},{"code":"4XX","description":"Client error, failure triggers retry"},{"code":"5XX","description":"Server error, failure triggers retry"}],"pointer":"/paths/customer.denied/post/responses"}],"panels":[]}]},"httpPath":"customer.denied"}],"content":{"contentType":"group","meta":{"name":"Customers"},"children":[{"nodeType":"container","children":[{"nodeType":"header","level":2,"label":"Customers","showPageActions":true},{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Register customers, submit KYC documents, and track verification status."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"See the "},"children":[]},{"$$mdtype":"Node","type":"link","inline":true,"attributes":{"href":"/guides/customer-registration"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Registration & Offers"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" guide for the complete flow."},"children":[]}]}]}]}],"panels":[{"children":[{"kind":"group-items","title":"Operations","titleTranslationKey":"operations","items":[{"title":"/customers","summary":"Register a customer","prefix":{"name":"post","color":"post"},"badges":[],"link":"/customers/createcustomer","deprecated":false},{"title":"/customers","summary":"List customers","prefix":{"name":"get","color":"get"},"badges":[],"link":"/customers/listcustomers","deprecated":false},{"title":"/customers/{customer_id}","summary":"Get a customer","prefix":{"name":"get","color":"get"},"badges":[],"link":"/customers/getcustomer","deprecated":false},{"title":"/customers/{customer_id}","summary":"Update customer data","prefix":{"name":"patch","color":"patch"},"badges":[],"link":"/customers/updatecustomer","deprecated":false},{"title":"/customers/{customer_id}/kyc-attachments","summary":"Upload a KYC attachment","prefix":{"name":"post","color":"post"},"badges":[],"link":"/customers/uploadkycattachment","deprecated":false},{"title":"/customers/{customer_id}/bank-account","summary":"Get customer bank account","prefix":{"name":"get","color":"get"},"badges":[],"link":"/customers/getcustomerbankaccount","deprecated":false},{"title":"/customers/{customer_id}/bank-account","summary":"Create or update customer bank account","prefix":{"name":"post","color":"post"},"badges":[],"link":"/customers/upsertcustomerbankaccount","deprecated":false},{"title":"/banks","summary":"List banks","prefix":{"name":"get","color":"get"},"badges":[],"link":"/customers/listbanks","deprecated":false},{"title":"/customers/{customer_id}/biometrics","summary":"Start biometrics","prefix":{"name":"post","color":"post"},"badges":[],"link":"/customers/createbiometricssession","deprecated":false}]},{"kind":"group-items","title":"Webhooks","titleTranslationKey":"webhooks","items":[{"title":"customer.created","summary":"Customer created","prefix":{"name":"post","color":"post"},"badges":[],"link":"/customers/oncustomercreated","deprecated":false},{"title":"customer.under_review","summary":"Customer under review","prefix":{"name":"post","color":"post"},"badges":[],"link":"/customers/oncustomerunderreview","deprecated":false},{"title":"customer.kyc_updated","summary":"Customer KYC updated","prefix":{"name":"post","color":"post"},"badges":[],"link":"/customers/oncustomerkycupdated","deprecated":false},{"title":"customer.active","summary":"Customer active","prefix":{"name":"post","color":"post"},"badges":[],"link":"/customers/oncustomeractive","deprecated":false},{"title":"customer.denied","summary":"Customer denied","prefix":{"name":"post","color":"post"},"badges":[],"link":"/customers/oncustomerdenied","deprecated":false}]}]}]}]}},{"type":"group","label":"Credit Offers","link":"/en-us/apis/openapi/credit-offers","routeSlug":"/en-us/apis/openapi/credit-offers","items":[{"label":"List customer credit offers","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/en-us/apis/openapi/credit-offers/listcustomercreditoffers","routeSlug":"/en-us/apis/openapi/credit-offers/listcustomercreditoffers","metadata":{"seo":{"title":"List customer credit offers","description":"GET /customers/{customer_id}/credit-offers"}},"content":{"contentType":"item","itemVariant":"httpItem","meta":{"sourceId":"listCustomerCreditOffers","name":"List customer credit offers","isWebhook":false,"pointer":"/paths/~1customers~1{customer_id}~1credit-offers/get","hasSamples":true},"children":[{"nodeType":"container","children":[{"nodeType":"header","level":2,"label":"List customer credit offers","isWebhook":false,"showPageActions":true}],"panels":[]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Request","labelTranslationKey":"request","deepLinkSuffix":"request"},{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"tag","tag":"html","attributes":{"name":"div","attrs":{"className":"endpoint-url"}},"children":[{"$$mdtype":"Node","type":"tag","tag":"html","attributes":{"name":"span","attrs":{"className":"mb mb--get"}},"children":[{"$$mdtype":"Node","type":"text","attributes":{"content":"GET"},"children":[]}]},{"$$mdtype":"Node","type":"text","attributes":{"content":" /customers/{customer_id}/credit-offers"},"children":[]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"List a customer's credit offers"},"children":[]}]}]}]},{"nodeType":"security","requirements":[{"schemes":[{"name":"bearerAuth","scopes":[],"type":"http","scheme":"bearer","bearerFormat":"JWT","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"JWT token obtained via OAuth2 Client Credentials. Send "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"POST /auth/token"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"with your credentials ("},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"client_id"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" and "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"client_secret"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":") in the"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Authorization: Basic base64(client_id:client_secret)"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" header to receive an"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"access token. Include the token in all requests:"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Authorization: Bearer <token>"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":". The token expires in 1 hour (3600s)."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Prefixes: "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"dinie_cs_live_"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" (production), "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"dinie_cs_test_"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" (sandbox)."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The returned token is prefixed with "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"dinie_at_"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]}]}]}]},{"nodeType":"item-content","variant":"path","label":"Path","labelTranslationKey":"path","parameters":[{"name":"customer_id","in":"path","schemaId":"schema_22","description":"Customer ID","required":true}],"pointer":"/paths/~1customers~1{customer_id}~1credit-offers/get/parameters"},{"nodeType":"item-content","variant":"query","label":"Query","labelTranslationKey":"query","parameters":[{"name":"status","in":"query","schemaId":"schema_39","description":"Filter by offer status"},{"name":"starting_after","in":"query","schemaId":"schema_6","description":"Prefixed ID of the last item from the previous page."},{"name":"limit","in":"query","schemaId":"schema_19","description":"Number of items to return. Min: 1, Max: 100."}],"pointer":"/paths/~1customers~1{customer_id}~1credit-offers/get/parameters"}],"panels":[{"children":[{"kind":"code-sample","source":{"kind":"code-sample","operationType":"http","method":"GET","path":"/customers/{customer_id}/credit-offers","servers":[{"url":"/_mock/en-us/apis/openapi","description":"Mock server","isMockServer":true},{"url":"https://api.dinie.com/api/v3","description":"Production"},{"url":"https://api-dev.dinietech.io/api/v3","description":"Sandbox"}],"parameters":{"path":[{"name":"customer_id","in":"path","required":true,"example":"cust_550e8400e29b41d4a716446655440000","schemaId":"components/schemas/CustomerId"}],"query":[{"name":"status","in":"query","schemaId":"schema_39"},{"name":"starting_after","in":"query","schemaId":"schema_6"},{"name":"limit","in":"query","schemaId":"schema_19"}],"querystring":[],"header":[],"cookie":[]},"security":[{"schemes":[{"id":"bearerAuth","type":"http","scheme":"bearer","bearerFormat":"JWT"}],"scopes":[]}],"responseCodes":["200","400","401","404","429","500"],"pointer":"/customers/{customer_id}/credit-offers","href":"credit-offers/listcustomercreditoffers","openApiOperationId":"listCustomerCreditOffers","summary":"List customer credit offers"},"definitionSamples":[{"lang":"curl","source":"curl \"https://api.dinie.com/api/v3/customers/cust_550e8400e29b41d4a716446655440000/credit-offers?status=available\" \\\n  -H \"Authorization: Bearer $DINIE_API_TOKEN\"\n"},{"lang":"Python","source":"from dinie import Dinie\n\nclient = Dinie(\n    client_id=\"dinie_ci_abc123\",\n    client_secret=\"dinie_cs_live_xyz789\"\n)\n\n# List available credit offers for a customer\noffers = client.customers.list_credit_offers(\n    \"cust_550e8400e29b41d4a716446655440000\",\n    status=\"available\"\n)\n\nfor offer in offers.data:\n    print(f\"{offer.id}: R$ {offer.approved_amount} ({offer.monthly_interest_rate}% a.m.)\")\n    # \"co_550e8400...: R$ 50000.00 (3.5% a.m.)\"\n"},{"lang":"Node.js","source":"const { Dinie } = require(\"dinie\");\n\nconst client = new Dinie({\n  clientId: \"dinie_ci_abc123\",\n  clientSecret: \"dinie_cs_live_xyz789\",\n});\n\n// List available credit offers for a customer\nconst offers = await client.customers.listCreditOffers(\n  \"cust_550e8400e29b41d4a716446655440000\",\n  { status: \"available\" }\n);\n\nfor (const offer of offers.data) {\n  console.log(`${offer.id}: R$ ${offer.approvedAmount} (${offer.interestRate}% a.m.)`);\n  // \"co_550e8400...: R$ 50000.00 (3.5% a.m.)\"\n}\n"},{"lang":"Ruby","source":"require \"dinie\"\n\nclient = Dinie::Client.new(\n  client_id: \"dinie_ci_abc123\",\n  client_secret: \"dinie_cs_live_xyz789\"\n)\n\n# List available credit offers for a customer\noffers = client.customers.list_credit_offers(\n  \"cust_550e8400e29b41d4a716446655440000\",\n  status: \"available\"\n)\n\noffers.data.each do |offer|\n  puts \"#{offer.id}: R$ #{offer.approved_amount} (#{offer.monthly_interest_rate}% a.m.)\"\n  # \"co_550e8400...: R$ 50000.00 (3.5% a.m.)\"\nend\n"}],"isWebhook":false,"hideReplay":false,"servers":[{"url":"/_mock/en-us/apis/openapi","description":"Mock server","isMockServer":true},{"url":"https://api.dinie.com/api/v3","description":"Production"},{"url":"https://api-dev.dinietech.io/api/v3","description":"Sandbox"}],"examples":[]}]}]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Responses","labelTranslationKey":"responses","deepLinkSuffix":"responses"},{"nodeType":"item-content","variant":"responses","responses":[{"code":"200","description":"List of credit offers","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_40","exampleIds":["paths/~1customers~1{customer_id}~1credit-offers/get/responses/200/content/application~1json/example"]}},"schemaId":"schema_40","exampleIds":["paths/~1customers~1{customer_id}~1credit-offers/get/responses/200/content/application~1json/example"]},{"code":"400","description":"Bad request","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_41","exampleIds":["paths/~1customers~1{customer_id}~1credit-offers/get/responses/400/content/application~1problem+json/examples/invalid_limit","paths/~1customers~1{customer_id}~1credit-offers/get/responses/400/content/application~1problem+json/examples/invalid_cursor"]}},"schemaId":"schema_41","exampleIds":["paths/~1customers~1{customer_id}~1credit-offers/get/responses/400/content/application~1problem+json/examples/invalid_limit","paths/~1customers~1{customer_id}~1credit-offers/get/responses/400/content/application~1problem+json/examples/invalid_cursor"]},{"code":"401","description":"Authentication failed","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_8","exampleIds":["paths/~1customers~1{customer_id}~1credit-offers/get/responses/401/content/application~1problem+json/examples/missing_token","paths/~1customers~1{customer_id}~1credit-offers/get/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1customers~1{customer_id}~1credit-offers/get/responses/401/content/application~1problem+json/examples/token_expired"]}},"schemaId":"schema_8","exampleIds":["paths/~1customers~1{customer_id}~1credit-offers/get/responses/401/content/application~1problem+json/examples/missing_token","paths/~1customers~1{customer_id}~1credit-offers/get/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1customers~1{customer_id}~1credit-offers/get/responses/401/content/application~1problem+json/examples/token_expired"]},{"code":"404","description":"Resource not found","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_24","exampleIds":["paths/~1customers~1{customer_id}~1credit-offers/get/responses/404/content/application~1problem+json/examples/customer_not_found"]}},"schemaId":"schema_24","exampleIds":["paths/~1customers~1{customer_id}~1credit-offers/get/responses/404/content/application~1problem+json/examples/customer_not_found"]},{"code":"429","description":"Rate limit exceeded","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_3","exampleIds":["paths/~1customers~1{customer_id}~1credit-offers/get/responses/429/content/application~1problem+json/example"]}},"schemaId":"schema_3","exampleIds":["paths/~1customers~1{customer_id}~1credit-offers/get/responses/429/content/application~1problem+json/example"],"headers":{"Retry-After":{"schema":{"type":"integer"},"description":"Seconds until the rate limit resets"}},"headerSchemaId":"schema_4"},{"code":"500","description":"Internal server error","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_5","exampleIds":["paths/~1customers~1{customer_id}~1credit-offers/get/responses/500/content/application~1problem+json/example"]}},"schemaId":"schema_5","exampleIds":["paths/~1customers~1{customer_id}~1credit-offers/get/responses/500/content/application~1problem+json/example"]}],"pointer":"/paths/~1customers~1{customer_id}~1credit-offers/get/responses"}],"panels":[{"children":[{"kind":"response","responseCodes":[{"code":"200","schemaId":"schema_40","exampleIds":["paths/~1customers~1{customer_id}~1credit-offers/get/responses/200/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_40","exampleIds":["paths/~1customers~1{customer_id}~1credit-offers/get/responses/200/content/application~1json/example"]}}},{"code":"400","schemaId":"schema_41","exampleIds":["paths/~1customers~1{customer_id}~1credit-offers/get/responses/400/content/application~1problem+json/examples/invalid_limit","paths/~1customers~1{customer_id}~1credit-offers/get/responses/400/content/application~1problem+json/examples/invalid_cursor"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_41","exampleIds":["paths/~1customers~1{customer_id}~1credit-offers/get/responses/400/content/application~1problem+json/examples/invalid_limit","paths/~1customers~1{customer_id}~1credit-offers/get/responses/400/content/application~1problem+json/examples/invalid_cursor"]}}},{"code":"401","schemaId":"schema_8","exampleIds":["paths/~1customers~1{customer_id}~1credit-offers/get/responses/401/content/application~1problem+json/examples/missing_token","paths/~1customers~1{customer_id}~1credit-offers/get/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1customers~1{customer_id}~1credit-offers/get/responses/401/content/application~1problem+json/examples/token_expired"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_8","exampleIds":["paths/~1customers~1{customer_id}~1credit-offers/get/responses/401/content/application~1problem+json/examples/missing_token","paths/~1customers~1{customer_id}~1credit-offers/get/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1customers~1{customer_id}~1credit-offers/get/responses/401/content/application~1problem+json/examples/token_expired"]}}},{"code":"404","schemaId":"schema_24","exampleIds":["paths/~1customers~1{customer_id}~1credit-offers/get/responses/404/content/application~1problem+json/examples/customer_not_found"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_24","exampleIds":["paths/~1customers~1{customer_id}~1credit-offers/get/responses/404/content/application~1problem+json/examples/customer_not_found"]}}},{"code":"429","schemaId":"schema_3","exampleIds":["paths/~1customers~1{customer_id}~1credit-offers/get/responses/429/content/application~1problem+json/example"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_3","exampleIds":["paths/~1customers~1{customer_id}~1credit-offers/get/responses/429/content/application~1problem+json/example"]}}},{"code":"500","schemaId":"schema_5","exampleIds":["paths/~1customers~1{customer_id}~1credit-offers/get/responses/500/content/application~1problem+json/example"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_5","exampleIds":["paths/~1customers~1{customer_id}~1credit-offers/get/responses/500/content/application~1problem+json/example"]}}}],"examples":[]}]}]}]},"httpPath":"/customers/{customer_id}/credit-offers"},{"label":"List credit offers","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/en-us/apis/openapi/credit-offers/listcreditoffers","routeSlug":"/en-us/apis/openapi/credit-offers/listcreditoffers","metadata":{"seo":{"title":"List credit offers","description":"GET /credit-offers"}},"content":{"contentType":"item","itemVariant":"httpItem","meta":{"sourceId":"listCreditOffers","name":"List credit offers","isWebhook":false,"pointer":"/paths/~1credit-offers/get","hasSamples":true},"children":[{"nodeType":"container","children":[{"nodeType":"header","level":2,"label":"List credit offers","isWebhook":false,"showPageActions":true}],"panels":[]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Request","labelTranslationKey":"request","deepLinkSuffix":"request"},{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"tag","tag":"html","attributes":{"name":"div","attrs":{"className":"endpoint-url"}},"children":[{"$$mdtype":"Node","type":"tag","tag":"html","attributes":{"name":"span","attrs":{"className":"mb mb--get"}},"children":[{"$$mdtype":"Node","type":"text","attributes":{"content":"GET"},"children":[]}]},{"$$mdtype":"Node","type":"text","attributes":{"content":" /credit-offers"},"children":[]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"List credit offers across all customers"},"children":[]}]}]}]},{"nodeType":"security","requirements":[{"schemes":[{"name":"bearerAuth","scopes":[],"type":"http","scheme":"bearer","bearerFormat":"JWT","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"JWT token obtained via OAuth2 Client Credentials. Send "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"POST /auth/token"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"with your credentials ("},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"client_id"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" and "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"client_secret"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":") in the"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Authorization: Basic base64(client_id:client_secret)"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" header to receive an"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"access token. Include the token in all requests:"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Authorization: Bearer <token>"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":". The token expires in 1 hour (3600s)."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Prefixes: "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"dinie_cs_live_"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" (production), "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"dinie_cs_test_"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" (sandbox)."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The returned token is prefixed with "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"dinie_at_"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]}]}]}]},{"nodeType":"item-content","variant":"query","label":"Query","labelTranslationKey":"query","parameters":[{"name":"customer_id","in":"query","schemaId":"schema_22","description":"Filter by customer"},{"name":"status","in":"query","schemaId":"schema_39","description":"Filter by offer status"},{"name":"starting_after","in":"query","schemaId":"schema_6","description":"Prefixed ID of the last item from the previous page."},{"name":"limit","in":"query","schemaId":"schema_19","description":"Number of items to return. Min: 1, Max: 100."}],"pointer":"/paths/~1credit-offers/get/parameters"}],"panels":[{"children":[{"kind":"code-sample","source":{"kind":"code-sample","operationType":"http","method":"GET","path":"/credit-offers","servers":[{"url":"/_mock/en-us/apis/openapi","description":"Mock server","isMockServer":true},{"url":"https://api.dinie.com/api/v3","description":"Production"},{"url":"https://api-dev.dinietech.io/api/v3","description":"Sandbox"}],"parameters":{"path":[],"query":[{"name":"customer_id","in":"query","example":"cust_550e8400e29b41d4a716446655440000","schemaId":"components/schemas/CustomerId"},{"name":"status","in":"query","schemaId":"schema_39"},{"name":"starting_after","in":"query","schemaId":"schema_6"},{"name":"limit","in":"query","schemaId":"schema_19"}],"querystring":[],"header":[],"cookie":[]},"security":[{"schemes":[{"id":"bearerAuth","type":"http","scheme":"bearer","bearerFormat":"JWT"}],"scopes":[]}],"responseCodes":["200","400","401","404","429","500"],"pointer":"/credit-offers","href":"credit-offers/listcreditoffers","openApiOperationId":"listCreditOffers","summary":"List credit offers"},"definitionSamples":[{"lang":"curl","source":"# List all available credit offers\ncurl \"https://api.dinie.com/api/v3/credit-offers?status=available&limit=10\" \\\n  -H \"Authorization: Bearer $DINIE_API_TOKEN\"\n"},{"lang":"Python","source":"from dinie import Dinie\n\nclient = Dinie(\n    client_id=\"dinie_ci_abc123\",\n    client_secret=\"dinie_cs_live_xyz789\"\n)\n\n# List all available credit offers across customers\noffers = client.credit_offers.list(\n    status=\"available\",\n    limit=10\n)\n\nfor offer in offers.data:\n    print(f\"Customer {offer.customer_id}: R$ {offer.approved_amount}\")\n\n# Filter by specific customer\noffers = client.credit_offers.list(\n    customer_id=\"cust_550e8400e29b41d4a716446655440000\",\n    status=\"available\"\n)\n"},{"lang":"Node.js","source":"const { Dinie } = require(\"dinie\");\n\nconst client = new Dinie({\n  clientId: \"dinie_ci_abc123\",\n  clientSecret: \"dinie_cs_live_xyz789\",\n});\n\n// List all available credit offers across customers\nconst offers = await client.creditOffers.list({\n  status: \"available\",\n  limit: 10,\n});\n\nfor (const offer of offers.data) {\n  console.log(`Customer ${offer.customerId}: R$ ${offer.approvedAmount}`);\n}\n\n// Filter by specific customer\nconst filtered = await client.creditOffers.list({\n  customerId: \"cust_550e8400e29b41d4a716446655440000\",\n  status: \"available\",\n});\n"},{"lang":"Ruby","source":"require \"dinie\"\n\nclient = Dinie::Client.new(\n  client_id: \"dinie_ci_abc123\",\n  client_secret: \"dinie_cs_live_xyz789\"\n)\n\n# List all available credit offers across customers\noffers = client.credit_offers.list(\n  status: \"available\",\n  limit: 10\n)\n\noffers.data.each do |offer|\n  puts \"Customer #{offer.customer_id}: R$ #{offer.approved_amount}\"\nend\n\n# Filter by specific customer\noffers = client.credit_offers.list(\n  customer_id: \"cust_550e8400e29b41d4a716446655440000\",\n  status: \"available\"\n)\n"}],"isWebhook":false,"hideReplay":false,"servers":[{"url":"/_mock/en-us/apis/openapi","description":"Mock server","isMockServer":true},{"url":"https://api.dinie.com/api/v3","description":"Production"},{"url":"https://api-dev.dinietech.io/api/v3","description":"Sandbox"}],"examples":[]}]}]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Responses","labelTranslationKey":"responses","deepLinkSuffix":"responses"},{"nodeType":"item-content","variant":"responses","responses":[{"code":"200","description":"List of credit offers","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_40","exampleIds":["paths/~1credit-offers/get/responses/200/content/application~1json/example"]}},"schemaId":"schema_40","exampleIds":["paths/~1credit-offers/get/responses/200/content/application~1json/example"]},{"code":"400","description":"Bad request","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_41","exampleIds":["paths/~1credit-offers/get/responses/400/content/application~1problem+json/examples/invalid_limit","paths/~1credit-offers/get/responses/400/content/application~1problem+json/examples/invalid_cursor"]}},"schemaId":"schema_41","exampleIds":["paths/~1credit-offers/get/responses/400/content/application~1problem+json/examples/invalid_limit","paths/~1credit-offers/get/responses/400/content/application~1problem+json/examples/invalid_cursor"]},{"code":"401","description":"Authentication failed","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_8","exampleIds":["paths/~1credit-offers/get/responses/401/content/application~1problem+json/examples/missing_token","paths/~1credit-offers/get/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1credit-offers/get/responses/401/content/application~1problem+json/examples/token_expired"]}},"schemaId":"schema_8","exampleIds":["paths/~1credit-offers/get/responses/401/content/application~1problem+json/examples/missing_token","paths/~1credit-offers/get/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1credit-offers/get/responses/401/content/application~1problem+json/examples/token_expired"]},{"code":"404","description":"Resource not found","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_42","exampleIds":["paths/~1credit-offers/get/responses/404/content/application~1problem+json/examples/customer_not_found"]}},"schemaId":"schema_42","exampleIds":["paths/~1credit-offers/get/responses/404/content/application~1problem+json/examples/customer_not_found"]},{"code":"429","description":"Rate limit exceeded","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_3","exampleIds":["paths/~1credit-offers/get/responses/429/content/application~1problem+json/example"]}},"schemaId":"schema_3","exampleIds":["paths/~1credit-offers/get/responses/429/content/application~1problem+json/example"],"headers":{"Retry-After":{"schema":{"type":"integer"},"description":"Seconds until the rate limit resets"}},"headerSchemaId":"schema_4"},{"code":"500","description":"Internal server error","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_5","exampleIds":["paths/~1credit-offers/get/responses/500/content/application~1problem+json/example"]}},"schemaId":"schema_5","exampleIds":["paths/~1credit-offers/get/responses/500/content/application~1problem+json/example"]}],"pointer":"/paths/~1credit-offers/get/responses"}],"panels":[{"children":[{"kind":"response","responseCodes":[{"code":"200","schemaId":"schema_40","exampleIds":["paths/~1credit-offers/get/responses/200/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_40","exampleIds":["paths/~1credit-offers/get/responses/200/content/application~1json/example"]}}},{"code":"400","schemaId":"schema_41","exampleIds":["paths/~1credit-offers/get/responses/400/content/application~1problem+json/examples/invalid_limit","paths/~1credit-offers/get/responses/400/content/application~1problem+json/examples/invalid_cursor"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_41","exampleIds":["paths/~1credit-offers/get/responses/400/content/application~1problem+json/examples/invalid_limit","paths/~1credit-offers/get/responses/400/content/application~1problem+json/examples/invalid_cursor"]}}},{"code":"401","schemaId":"schema_8","exampleIds":["paths/~1credit-offers/get/responses/401/content/application~1problem+json/examples/missing_token","paths/~1credit-offers/get/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1credit-offers/get/responses/401/content/application~1problem+json/examples/token_expired"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_8","exampleIds":["paths/~1credit-offers/get/responses/401/content/application~1problem+json/examples/missing_token","paths/~1credit-offers/get/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1credit-offers/get/responses/401/content/application~1problem+json/examples/token_expired"]}}},{"code":"404","schemaId":"schema_42","exampleIds":["paths/~1credit-offers/get/responses/404/content/application~1problem+json/examples/customer_not_found"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_42","exampleIds":["paths/~1credit-offers/get/responses/404/content/application~1problem+json/examples/customer_not_found"]}}},{"code":"429","schemaId":"schema_3","exampleIds":["paths/~1credit-offers/get/responses/429/content/application~1problem+json/example"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_3","exampleIds":["paths/~1credit-offers/get/responses/429/content/application~1problem+json/example"]}}},{"code":"500","schemaId":"schema_5","exampleIds":["paths/~1credit-offers/get/responses/500/content/application~1problem+json/example"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_5","exampleIds":["paths/~1credit-offers/get/responses/500/content/application~1problem+json/example"]}}}],"examples":[]}]}]}]},"httpPath":"/credit-offers"},{"label":"Get a credit offer","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/en-us/apis/openapi/credit-offers/getcreditoffer","routeSlug":"/en-us/apis/openapi/credit-offers/getcreditoffer","metadata":{"seo":{"title":"Get a credit offer","description":"GET /credit-offers/{credit_offer_id}"}},"content":{"contentType":"item","itemVariant":"httpItem","meta":{"sourceId":"getCreditOffer","name":"Get a credit offer","isWebhook":false,"pointer":"/paths/~1credit-offers~1{credit_offer_id}/get","hasSamples":true},"children":[{"nodeType":"container","children":[{"nodeType":"header","level":2,"label":"Get a credit offer","isWebhook":false,"showPageActions":true}],"panels":[]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Request","labelTranslationKey":"request","deepLinkSuffix":"request"},{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"tag","tag":"html","attributes":{"name":"div","attrs":{"className":"endpoint-url"}},"children":[{"$$mdtype":"Node","type":"tag","tag":"html","attributes":{"name":"span","attrs":{"className":"mb mb--get"}},"children":[{"$$mdtype":"Node","type":"text","attributes":{"content":"GET"},"children":[]}]},{"$$mdtype":"Node","type":"text","attributes":{"content":" /credit-offers/{credit_offer_id}"},"children":[]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Get a credit offer"},"children":[]}]}]}]},{"nodeType":"security","requirements":[{"schemes":[{"name":"bearerAuth","scopes":[],"type":"http","scheme":"bearer","bearerFormat":"JWT","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"JWT token obtained via OAuth2 Client Credentials. Send "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"POST /auth/token"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"with your credentials ("},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"client_id"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" and "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"client_secret"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":") in the"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Authorization: Basic base64(client_id:client_secret)"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" header to receive an"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"access token. Include the token in all requests:"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Authorization: Bearer <token>"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":". The token expires in 1 hour (3600s)."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Prefixes: "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"dinie_cs_live_"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" (production), "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"dinie_cs_test_"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" (sandbox)."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The returned token is prefixed with "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"dinie_at_"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]}]}]}]},{"nodeType":"item-content","variant":"path","label":"Path","labelTranslationKey":"path","parameters":[{"name":"credit_offer_id","in":"path","schemaId":"schema_43","description":"Credit offer ID","required":true}],"pointer":"/paths/~1credit-offers~1{credit_offer_id}/get/parameters"}],"panels":[{"children":[{"kind":"code-sample","source":{"kind":"code-sample","operationType":"http","method":"GET","path":"/credit-offers/{credit_offer_id}","servers":[{"url":"/_mock/en-us/apis/openapi","description":"Mock server","isMockServer":true},{"url":"https://api.dinie.com/api/v3","description":"Production"},{"url":"https://api-dev.dinietech.io/api/v3","description":"Sandbox"}],"parameters":{"path":[{"name":"credit_offer_id","in":"path","required":true,"example":"co_550e8400e29b41d4a716446655440000","schemaId":"components/schemas/CreditOfferId"}],"query":[],"querystring":[],"header":[],"cookie":[]},"security":[{"schemes":[{"id":"bearerAuth","type":"http","scheme":"bearer","bearerFormat":"JWT"}],"scopes":[]}],"responseCodes":["200","401","404","429","500"],"pointer":"/credit-offers/{credit_offer_id}","href":"credit-offers/getcreditoffer","openApiOperationId":"getCreditOffer","summary":"Get a credit offer"},"definitionSamples":[{"lang":"curl","source":"curl https://api.dinie.com/api/v3/credit-offers/co_550e8400e29b41d4a716446655440000 \\\n  -H \"Authorization: Bearer $DINIE_API_TOKEN\"\n"},{"lang":"Python","source":"from dinie import Dinie\n\nclient = Dinie(\n    client_id=\"dinie_ci_abc123\",\n    client_secret=\"dinie_cs_live_xyz789\"\n)\n\n# Retrieve a credit offer\noffer = client.credit_offers.retrieve(\"co_550e8400e29b41d4a716446655440000\")\n\nprint(offer.approved_amount)  # 50000.00\nprint(offer.min_amount)       # 200.00\nprint(offer.monthly_interest_rate)    # 3.50\nprint(offer.valid_until)      # 1775253599\n"},{"lang":"Node.js","source":"const { Dinie } = require(\"dinie\");\n\nconst client = new Dinie({\n  clientId: \"dinie_ci_abc123\",\n  clientSecret: \"dinie_cs_live_xyz789\",\n});\n\n// Retrieve a credit offer\nconst offer = await client.creditOffers.retrieve(\n  \"co_550e8400e29b41d4a716446655440000\"\n);\n\nconsole.log(offer.approvedAmount);  // 50000.00\nconsole.log(offer.minAmount);       // 200.00\nconsole.log(offer.interestRate);    // 3.50\nconsole.log(offer.validUntil);      // 1775253599\n"},{"lang":"Ruby","source":"require \"dinie\"\n\nclient = Dinie::Client.new(\n  client_id: \"dinie_ci_abc123\",\n  client_secret: \"dinie_cs_live_xyz789\"\n)\n\n# Retrieve a credit offer\noffer = client.credit_offers.retrieve(\"co_550e8400e29b41d4a716446655440000\")\n\nputs offer.approved_amount  # 50000.00\nputs offer.min_amount       # 200.00\nputs offer.monthly_interest_rate    # 3.50\nputs offer.valid_until      # 1775253599\n"}],"isWebhook":false,"hideReplay":false,"servers":[{"url":"/_mock/en-us/apis/openapi","description":"Mock server","isMockServer":true},{"url":"https://api.dinie.com/api/v3","description":"Production"},{"url":"https://api-dev.dinietech.io/api/v3","description":"Sandbox"}],"examples":[]}]}]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Responses","labelTranslationKey":"responses","deepLinkSuffix":"responses"},{"nodeType":"item-content","variant":"responses","responses":[{"code":"200","description":"Credit offer details","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/CreditOffer","exampleIds":["paths/~1credit-offers~1{credit_offer_id}/get/responses/200/content/application~1json/example"]}},"schemaId":"components/schemas/CreditOffer","exampleIds":["paths/~1credit-offers~1{credit_offer_id}/get/responses/200/content/application~1json/example"]},{"code":"401","description":"Authentication failed","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_8","exampleIds":["paths/~1credit-offers~1{credit_offer_id}/get/responses/401/content/application~1problem+json/examples/missing_token","paths/~1credit-offers~1{credit_offer_id}/get/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1credit-offers~1{credit_offer_id}/get/responses/401/content/application~1problem+json/examples/token_expired"]}},"schemaId":"schema_8","exampleIds":["paths/~1credit-offers~1{credit_offer_id}/get/responses/401/content/application~1problem+json/examples/missing_token","paths/~1credit-offers~1{credit_offer_id}/get/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1credit-offers~1{credit_offer_id}/get/responses/401/content/application~1problem+json/examples/token_expired"]},{"code":"404","description":"Resource not found","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_44","exampleIds":["paths/~1credit-offers~1{credit_offer_id}/get/responses/404/content/application~1problem+json/examples/credit_offer_not_found"]}},"schemaId":"schema_44","exampleIds":["paths/~1credit-offers~1{credit_offer_id}/get/responses/404/content/application~1problem+json/examples/credit_offer_not_found"]},{"code":"429","description":"Rate limit exceeded","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_3","exampleIds":["paths/~1credit-offers~1{credit_offer_id}/get/responses/429/content/application~1problem+json/example"]}},"schemaId":"schema_3","exampleIds":["paths/~1credit-offers~1{credit_offer_id}/get/responses/429/content/application~1problem+json/example"],"headers":{"Retry-After":{"schema":{"type":"integer"},"description":"Seconds until the rate limit resets"}},"headerSchemaId":"schema_4"},{"code":"500","description":"Internal server error","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_5","exampleIds":["paths/~1credit-offers~1{credit_offer_id}/get/responses/500/content/application~1problem+json/example"]}},"schemaId":"schema_5","exampleIds":["paths/~1credit-offers~1{credit_offer_id}/get/responses/500/content/application~1problem+json/example"]}],"pointer":"/paths/~1credit-offers~1{credit_offer_id}/get/responses"}],"panels":[{"children":[{"kind":"response","responseCodes":[{"code":"200","schemaId":"components/schemas/CreditOffer","exampleIds":["paths/~1credit-offers~1{credit_offer_id}/get/responses/200/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/CreditOffer","exampleIds":["paths/~1credit-offers~1{credit_offer_id}/get/responses/200/content/application~1json/example"]}}},{"code":"401","schemaId":"schema_8","exampleIds":["paths/~1credit-offers~1{credit_offer_id}/get/responses/401/content/application~1problem+json/examples/missing_token","paths/~1credit-offers~1{credit_offer_id}/get/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1credit-offers~1{credit_offer_id}/get/responses/401/content/application~1problem+json/examples/token_expired"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_8","exampleIds":["paths/~1credit-offers~1{credit_offer_id}/get/responses/401/content/application~1problem+json/examples/missing_token","paths/~1credit-offers~1{credit_offer_id}/get/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1credit-offers~1{credit_offer_id}/get/responses/401/content/application~1problem+json/examples/token_expired"]}}},{"code":"404","schemaId":"schema_44","exampleIds":["paths/~1credit-offers~1{credit_offer_id}/get/responses/404/content/application~1problem+json/examples/credit_offer_not_found"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_44","exampleIds":["paths/~1credit-offers~1{credit_offer_id}/get/responses/404/content/application~1problem+json/examples/credit_offer_not_found"]}}},{"code":"429","schemaId":"schema_3","exampleIds":["paths/~1credit-offers~1{credit_offer_id}/get/responses/429/content/application~1problem+json/example"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_3","exampleIds":["paths/~1credit-offers~1{credit_offer_id}/get/responses/429/content/application~1problem+json/example"]}}},{"code":"500","schemaId":"schema_5","exampleIds":["paths/~1credit-offers~1{credit_offer_id}/get/responses/500/content/application~1problem+json/example"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_5","exampleIds":["paths/~1credit-offers~1{credit_offer_id}/get/responses/500/content/application~1problem+json/example"]}}}],"examples":[]}]}]}]},"httpPath":"/credit-offers/{credit_offer_id}"},{"type":"separator","label":"Webhooks","variant":"secondary","content":null},{"label":"Credit offer available","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":true,"type":"link","link":"/en-us/apis/openapi/credit-offers/oncreditofferavailable","routeSlug":"/en-us/apis/openapi/credit-offers/oncreditofferavailable","metadata":{"seo":{"title":"Credit offer available","description":"Fires when Dinie generates a new pre-approved credit offer for the customer.Includes approved amount, interest rate, installments, and offer expiration date.Use it to notify the customer about credit availability and start the simulation flowvia POST /credit-offers/{id}/simulations."}},"content":{"contentType":"item","itemVariant":"httpItem","meta":{"sourceId":"onCreditOfferAvailable","name":"Credit offer available","isWebhook":true,"pointer":"/paths/credit_offer.available/post","hasSamples":true},"children":[{"nodeType":"container","children":[{"nodeType":"header","level":2,"label":"Credit offer available","isWebhook":true,"showPageActions":true}],"panels":[]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Request","labelTranslationKey":"request","deepLinkSuffix":"request"},{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Fires when Dinie generates a new pre-approved credit offer for the customer."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Includes approved amount, interest rate, installments, and offer expiration date."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Use it to notify the customer about credit availability and start the simulation flow"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"via "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"POST /credit-offers/{id}/simulations"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]}]},{"nodeType":"security","requirements":[{"schemes":[{"name":"webhookSignature","scopes":[],"type":"apiKey","in":"header","paramName":"webhook-signature","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"HMAC-SHA256 signature per the Standard Webhooks specification."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Verify using the "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"whsec_"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"-prefixed secret from endpoint creation."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The header contains base64-encoded signatures; the signed content"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"is "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"{webhook-id}.{webhook-timestamp}.{body}"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]}]}]}]},{"nodeType":"item-content","variant":"headers","label":"Headers","labelTranslationKey":"header","parameters":[{"name":"webhook-id","in":"header","schemaId":"schema_37","description":"Unique delivery ID. Use as idempotency key to deduplicate events","required":true},{"name":"webhook-timestamp","in":"header","schemaId":"schema_38","description":"Unix timestamp of the delivery attempt. Reject if older than 5 minutes (replay protection)","required":true},{"name":"webhook-signature","in":"header","schemaId":"schema_6","description":"HMAC-SHA256 signature(s) for verification per Standard Webhooks spec","required":true}],"pointer":"/paths/credit_offer.available/post/parameters"},{"nodeType":"item-content","variant":"body","label":"Request Body","labelTranslationKey":"body","required":true,"isEvent":true,"mediaTypes":["application/json"],"mediaTypeSchemas":{"application/json":{"schemaId":"components/schemas/WebhookEvent_CreditOffer","exampleIds":["paths/credit_offer.available/post/requestBody/content/application~1json/example"]}},"schemaId":"components/schemas/WebhookEvent_CreditOffer","exampleIds":["paths/credit_offer.available/post/requestBody/content/application~1json/example"],"pointer":"/paths/credit_offer.available/post/requestBody"}],"panels":[{"children":[{"kind":"code-sample","source":{"kind":"code-sample","operationType":"webhook","method":"POST","path":"credit_offer.available","servers":[{"url":"/_mock/en-us/apis/openapi","description":"Mock server","isMockServer":true},{"url":"https://api.dinie.com/api/v3","description":"Production"},{"url":"https://api-dev.dinietech.io/api/v3","description":"Sandbox"}],"parameters":{"path":[],"query":[],"querystring":[],"header":[{"name":"webhook-id","in":"header","required":true,"example":"evt_550e8400e29b41d4a716446655440000","schemaId":"components/schemas/EventId"},{"name":"webhook-timestamp","in":"header","required":true,"schemaId":"schema_38"},{"name":"webhook-signature","in":"header","required":true,"schemaId":"schema_6"}],"cookie":[]},"security":[{"schemes":[{"id":"webhookSignature","type":"apiKey","name":"webhook-signature","in":"header"}],"scopes":[]}],"requestBody":{"application/json":{"schemaId":"components/schemas/WebhookEvent_CreditOffer","exampleIds":["paths/credit_offer.available/post/requestBody/content/application~1json/example"]}},"responseCodes":["200","410","429","502","504","4XX","5XX"],"pointer":"credit_offer.available","href":"credit-offers/oncreditofferavailable","openApiOperationId":"onCreditOfferAvailable","summary":"Credit offer available"},"isWebhook":true,"hideReplay":false,"servers":[{"url":"/_mock/en-us/apis/openapi","description":"Mock server","isMockServer":true},{"url":"https://api.dinie.com/api/v3","description":"Production"},{"url":"https://api-dev.dinietech.io/api/v3","description":"Sandbox"}],"schemaId":"components/schemas/WebhookEvent_CreditOffer","exampleIds":["paths/credit_offer.available/post/requestBody/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeSchemas":{"application/json":{"schemaId":"components/schemas/WebhookEvent_CreditOffer","exampleIds":["paths/credit_offer.available/post/requestBody/content/application~1json/example"]}},"examples":[{}]}]}]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Responses","labelTranslationKey":"responses","deepLinkSuffix":"responses"},{"nodeType":"item-content","variant":"responses","responses":[{"code":"200","description":"Delivery confirmed"},{"code":"410","description":"Endpoint permanently disabled"},{"code":"429","description":"Rate-limiting, send rate reduced"},{"code":"502","description":"Server overload, rate reduced before retrying"},{"code":"504","description":"Gateway timeout, rate reduced before retrying"},{"code":"4XX","description":"Client error, failure triggers retry"},{"code":"5XX","description":"Server error, failure triggers retry"}],"pointer":"/paths/credit_offer.available/post/responses"}],"panels":[]}]},"httpPath":"credit_offer.available"},{"label":"Credit offer expired","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":true,"type":"link","link":"/en-us/apis/openapi/credit-offers/oncreditofferexpired","routeSlug":"/en-us/apis/openapi/credit-offers/oncreditofferexpired","metadata":{"seo":{"title":"Credit offer expired","description":"Fires when a credit offer expires after exceeding its expiration date(valid_until). Includes the full offer data with expired status.Use it to remove the offer from the customer interface. New offers may be generatedin the future via credit_offer.available."}},"content":{"contentType":"item","itemVariant":"httpItem","meta":{"sourceId":"onCreditOfferExpired","name":"Credit offer expired","isWebhook":true,"pointer":"/paths/credit_offer.expired/post","hasSamples":true},"children":[{"nodeType":"container","children":[{"nodeType":"header","level":2,"label":"Credit offer expired","isWebhook":true,"showPageActions":true}],"panels":[]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Request","labelTranslationKey":"request","deepLinkSuffix":"request"},{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Fires when a credit offer expires after exceeding its expiration date"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"("},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"valid_until"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"). Includes the full offer data with "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"expired"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" status."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Use it to remove the offer from the customer interface. New offers may be generated"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"in the future via "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"credit_offer.available"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]}]},{"nodeType":"security","requirements":[{"schemes":[{"name":"webhookSignature","scopes":[],"type":"apiKey","in":"header","paramName":"webhook-signature","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"HMAC-SHA256 signature per the Standard Webhooks specification."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Verify using the "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"whsec_"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"-prefixed secret from endpoint creation."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The header contains base64-encoded signatures; the signed content"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"is "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"{webhook-id}.{webhook-timestamp}.{body}"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]}]}]}]},{"nodeType":"item-content","variant":"headers","label":"Headers","labelTranslationKey":"header","parameters":[{"name":"webhook-id","in":"header","schemaId":"schema_37","description":"Unique delivery ID. Use as idempotency key to deduplicate events","required":true},{"name":"webhook-timestamp","in":"header","schemaId":"schema_38","description":"Unix timestamp of the delivery attempt. Reject if older than 5 minutes (replay protection)","required":true},{"name":"webhook-signature","in":"header","schemaId":"schema_6","description":"HMAC-SHA256 signature(s) for verification per Standard Webhooks spec","required":true}],"pointer":"/paths/credit_offer.expired/post/parameters"},{"nodeType":"item-content","variant":"body","label":"Request Body","labelTranslationKey":"body","required":true,"isEvent":true,"mediaTypes":["application/json"],"mediaTypeSchemas":{"application/json":{"schemaId":"components/schemas/WebhookEvent_CreditOffer","exampleIds":["paths/credit_offer.expired/post/requestBody/content/application~1json/example"]}},"schemaId":"components/schemas/WebhookEvent_CreditOffer","exampleIds":["paths/credit_offer.expired/post/requestBody/content/application~1json/example"],"pointer":"/paths/credit_offer.expired/post/requestBody"}],"panels":[{"children":[{"kind":"code-sample","source":{"kind":"code-sample","operationType":"webhook","method":"POST","path":"credit_offer.expired","servers":[{"url":"/_mock/en-us/apis/openapi","description":"Mock server","isMockServer":true},{"url":"https://api.dinie.com/api/v3","description":"Production"},{"url":"https://api-dev.dinietech.io/api/v3","description":"Sandbox"}],"parameters":{"path":[],"query":[],"querystring":[],"header":[{"name":"webhook-id","in":"header","required":true,"example":"evt_550e8400e29b41d4a716446655440000","schemaId":"components/schemas/EventId"},{"name":"webhook-timestamp","in":"header","required":true,"schemaId":"schema_38"},{"name":"webhook-signature","in":"header","required":true,"schemaId":"schema_6"}],"cookie":[]},"security":[{"schemes":[{"id":"webhookSignature","type":"apiKey","name":"webhook-signature","in":"header"}],"scopes":[]}],"requestBody":{"application/json":{"schemaId":"components/schemas/WebhookEvent_CreditOffer","exampleIds":["paths/credit_offer.expired/post/requestBody/content/application~1json/example"]}},"responseCodes":["200","410","429","502","504","4XX","5XX"],"pointer":"credit_offer.expired","href":"credit-offers/oncreditofferexpired","openApiOperationId":"onCreditOfferExpired","summary":"Credit offer expired"},"isWebhook":true,"hideReplay":false,"servers":[{"url":"/_mock/en-us/apis/openapi","description":"Mock server","isMockServer":true},{"url":"https://api.dinie.com/api/v3","description":"Production"},{"url":"https://api-dev.dinietech.io/api/v3","description":"Sandbox"}],"schemaId":"components/schemas/WebhookEvent_CreditOffer","exampleIds":["paths/credit_offer.expired/post/requestBody/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeSchemas":{"application/json":{"schemaId":"components/schemas/WebhookEvent_CreditOffer","exampleIds":["paths/credit_offer.expired/post/requestBody/content/application~1json/example"]}},"examples":[{}]}]}]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Responses","labelTranslationKey":"responses","deepLinkSuffix":"responses"},{"nodeType":"item-content","variant":"responses","responses":[{"code":"200","description":"Delivery confirmed"},{"code":"410","description":"Endpoint permanently disabled"},{"code":"429","description":"Rate-limiting, send rate reduced"},{"code":"502","description":"Server overload, rate reduced before retrying"},{"code":"504","description":"Gateway timeout, rate reduced before retrying"},{"code":"4XX","description":"Client error, failure triggers retry"},{"code":"5XX","description":"Server error, failure triggers retry"}],"pointer":"/paths/credit_offer.expired/post/responses"}],"panels":[]}]},"httpPath":"credit_offer.expired"}],"content":{"contentType":"group","meta":{"name":"Credit Offers"},"children":[{"nodeType":"container","children":[{"nodeType":"header","level":2,"label":"Credit Offers","showPageActions":true},{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Pre-approved credit offers and loan simulations for eligible customers."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"See the "},"children":[]},{"$$mdtype":"Node","type":"link","inline":true,"attributes":{"href":"/guides/credit-workflow"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Simulation & Contracting"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" guide for the complete flow."},"children":[]}]}]}]}],"panels":[{"children":[{"kind":"group-items","title":"Operations","titleTranslationKey":"operations","items":[{"title":"/customers/{customer_id}/credit-offers","summary":"List customer credit offers","prefix":{"name":"get","color":"get"},"badges":[],"link":"/credit-offers/listcustomercreditoffers","deprecated":false},{"title":"/credit-offers","summary":"List credit offers","prefix":{"name":"get","color":"get"},"badges":[],"link":"/credit-offers/listcreditoffers","deprecated":false},{"title":"/credit-offers/{credit_offer_id}","summary":"Get a credit offer","prefix":{"name":"get","color":"get"},"badges":[],"link":"/credit-offers/getcreditoffer","deprecated":false}]},{"kind":"group-items","title":"Webhooks","titleTranslationKey":"webhooks","items":[{"title":"credit_offer.available","summary":"Credit offer available","prefix":{"name":"post","color":"post"},"badges":[],"link":"/credit-offers/oncreditofferavailable","deprecated":false},{"title":"credit_offer.expired","summary":"Credit offer expired","prefix":{"name":"post","color":"post"},"badges":[],"link":"/credit-offers/oncreditofferexpired","deprecated":false}]}]}]}]}},{"type":"group","label":"Loans","link":"/en-us/apis/openapi/loans","routeSlug":"/en-us/apis/openapi/loans","items":[{"label":"Simulate a loan","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/en-us/apis/openapi/loans/createsimulation","routeSlug":"/en-us/apis/openapi/loans/createsimulation","metadata":{"seo":{"title":"Simulate a loan","description":"POST /credit-offers/{credit_offer_id}/simulations"}},"content":{"contentType":"item","itemVariant":"httpItem","meta":{"sourceId":"createSimulation","name":"Simulate a loan","isWebhook":false,"pointer":"/paths/~1credit-offers~1{credit_offer_id}~1simulations/post","hasSamples":true},"children":[{"nodeType":"container","children":[{"nodeType":"header","level":2,"label":"Simulate a loan","isWebhook":false,"showPageActions":true}],"panels":[]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Request","labelTranslationKey":"request","deepLinkSuffix":"request"},{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"tag","tag":"html","attributes":{"name":"div","attrs":{"className":"endpoint-url"}},"children":[{"$$mdtype":"Node","type":"tag","tag":"html","attributes":{"name":"span","attrs":{"className":"mb mb--post"}},"children":[{"$$mdtype":"Node","type":"text","attributes":{"content":"POST"},"children":[]}]},{"$$mdtype":"Node","type":"text","attributes":{"content":" /credit-offers/{credit_offer_id}/simulations"},"children":[]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Simulate loan terms for a credit offer"},"children":[]}]}]}]},{"nodeType":"security","requirements":[{"schemes":[{"name":"bearerAuth","scopes":[],"type":"http","scheme":"bearer","bearerFormat":"JWT","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"JWT token obtained via OAuth2 Client Credentials. Send "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"POST /auth/token"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"with your credentials ("},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"client_id"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" and "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"client_secret"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":") in the"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Authorization: Basic base64(client_id:client_secret)"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" header to receive an"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"access token. Include the token in all requests:"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Authorization: Bearer <token>"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":". The token expires in 1 hour (3600s)."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Prefixes: "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"dinie_cs_live_"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" (production), "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"dinie_cs_test_"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" (sandbox)."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The returned token is prefixed with "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"dinie_at_"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]}]}]}]},{"nodeType":"item-content","variant":"path","label":"Path","labelTranslationKey":"path","parameters":[{"name":"credit_offer_id","in":"path","schemaId":"schema_43","description":"Credit offer ID","required":true}],"pointer":"/paths/~1credit-offers~1{credit_offer_id}~1simulations/post/parameters"},{"nodeType":"item-content","variant":"headers","label":"Headers","labelTranslationKey":"header","parameters":[{"name":"X-Idempotency-Key","in":"header","schemaId":"schema_6","description":"Unique string for idempotent POST requests. Cached for 24 hours."}],"pointer":"/paths/~1credit-offers~1{credit_offer_id}~1simulations/post/parameters"},{"nodeType":"item-content","variant":"body","label":"Request Body","labelTranslationKey":"body","required":true,"mediaTypes":["application/json"],"mediaTypeSchemas":{"application/json":{"schemaId":"components/schemas/CreateSimulationRequest","exampleIds":["paths/~1credit-offers~1{credit_offer_id}~1simulations/post/requestBody/content/application~1json/example"]}},"schemaId":"components/schemas/CreateSimulationRequest","exampleIds":["paths/~1credit-offers~1{credit_offer_id}~1simulations/post/requestBody/content/application~1json/example"],"pointer":"/paths/~1credit-offers~1{credit_offer_id}~1simulations/post/requestBody"}],"panels":[{"children":[{"kind":"code-sample","source":{"kind":"code-sample","operationType":"http","method":"POST","path":"/credit-offers/{credit_offer_id}/simulations","servers":[{"url":"/_mock/en-us/apis/openapi","description":"Mock server","isMockServer":true},{"url":"https://api.dinie.com/api/v3","description":"Production"},{"url":"https://api-dev.dinietech.io/api/v3","description":"Sandbox"}],"parameters":{"path":[{"name":"credit_offer_id","in":"path","required":true,"example":"co_550e8400e29b41d4a716446655440000","schemaId":"components/schemas/CreditOfferId"}],"query":[],"querystring":[],"header":[{"name":"X-Idempotency-Key","in":"header","required":false,"schemaId":"schema_6"}],"cookie":[]},"security":[{"schemes":[{"id":"bearerAuth","type":"http","scheme":"bearer","bearerFormat":"JWT"}],"scopes":[]}],"requestBody":{"application/json":{"schemaId":"components/schemas/CreateSimulationRequest","exampleIds":["paths/~1credit-offers~1{credit_offer_id}~1simulations/post/requestBody/content/application~1json/example"]}},"responseCodes":["201","400","401","404","422","429","500"],"pointer":"/credit-offers/{credit_offer_id}/simulations","href":"loans/createsimulation","openApiOperationId":"createSimulation","summary":"Simulate a loan"},"definitionSamples":[{"lang":"curl","source":"curl -X POST https://api.dinie.com/api/v3/credit-offers/co_550e8400e29b41d4a716446655440000/simulations \\\n  -H \"Authorization: Bearer $DINIE_API_TOKEN\" \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\n    \"requested_amount\": 25000.00,\n    \"installment_count\": 12\n  }'\n"},{"lang":"Python","source":"from dinie import Dinie\n\nclient = Dinie(\n    client_id=\"dinie_ci_abc123\",\n    client_secret=\"dinie_cs_live_xyz789\"\n)\n\n# Simulate a loan scenario\nsimulation = client.credit_offers.simulate(\n    \"co_550e8400e29b41d4a716446655440000\",\n    requested_amount=25000.00,\n    installment_count=4\n)\n\nprint(simulation.id)                  # \"sim_550e8400...\"\nprint(simulation.installment_amount)   # 7997.34\nprint(simulation.annual_cet_rate)      # 233.18\nprint(simulation.total_amount)         # 31989.36\nprint(simulation.first_due_date)       # \"2026-04-03\"\n"},{"lang":"Node.js","source":"const { Dinie } = require(\"dinie\");\n\nconst client = new Dinie({\n  clientId: \"dinie_ci_abc123\",\n  clientSecret: \"dinie_cs_live_xyz789\",\n});\n\n// Simulate a loan scenario\nconst simulation = await client.creditOffers.simulate(\n  \"co_550e8400e29b41d4a716446655440000\",\n  {\n    requestedAmount: 25000.00,\n    installmentCount: 4,\n  }\n);\n\nconsole.log(simulation.id);                  // \"sim_550e8400...\"\nconsole.log(simulation.installmentAmount);   // 7997.34\nconsole.log(simulation.cetRate);             // 233.18\nconsole.log(simulation.totalAmount);         // 31989.36\nconsole.log(simulation.firstDueDate);        // \"2026-04-03\"\n"},{"lang":"Ruby","source":"require \"dinie\"\n\nclient = Dinie::Client.new(\n  client_id: \"dinie_ci_abc123\",\n  client_secret: \"dinie_cs_live_xyz789\"\n)\n\n# Simulate a loan scenario\nsimulation = client.credit_offers.simulate(\n  \"co_550e8400e29b41d4a716446655440000\",\n  requested_amount: 25000.00,\n  installment_count: 4\n)\n\nputs simulation.id                  # \"sim_550e8400...\"\nputs simulation.installment_amount   # 7997.34\nputs simulation.annual_cet_rate      # 233.18\nputs simulation.total_amount         # 31989.36\nputs simulation.first_due_date       # \"2026-04-03\"\n"}],"isWebhook":false,"hideReplay":false,"servers":[{"url":"/_mock/en-us/apis/openapi","description":"Mock server","isMockServer":true},{"url":"https://api.dinie.com/api/v3","description":"Production"},{"url":"https://api-dev.dinietech.io/api/v3","description":"Sandbox"}],"schemaId":"components/schemas/CreateSimulationRequest","exampleIds":["paths/~1credit-offers~1{credit_offer_id}~1simulations/post/requestBody/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeSchemas":{"application/json":{"schemaId":"components/schemas/CreateSimulationRequest","exampleIds":["paths/~1credit-offers~1{credit_offer_id}~1simulations/post/requestBody/content/application~1json/example"]}},"examples":[{}]}]}]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Responses","labelTranslationKey":"responses","deepLinkSuffix":"responses"},{"nodeType":"item-content","variant":"responses","responses":[{"code":"201","description":"Simulation created","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/Simulation","exampleIds":["paths/~1credit-offers~1{credit_offer_id}~1simulations/post/responses/201/content/application~1json/example"]}},"schemaId":"components/schemas/Simulation","exampleIds":["paths/~1credit-offers~1{credit_offer_id}~1simulations/post/responses/201/content/application~1json/example"]},{"code":"400","description":"Bad request","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_7","exampleIds":["paths/~1credit-offers~1{credit_offer_id}~1simulations/post/responses/400/content/application~1problem+json/examples/invalid_content_type","paths/~1credit-offers~1{credit_offer_id}~1simulations/post/responses/400/content/application~1problem+json/examples/malformed_body"]}},"schemaId":"schema_7","exampleIds":["paths/~1credit-offers~1{credit_offer_id}~1simulations/post/responses/400/content/application~1problem+json/examples/invalid_content_type","paths/~1credit-offers~1{credit_offer_id}~1simulations/post/responses/400/content/application~1problem+json/examples/malformed_body"]},{"code":"401","description":"Authentication failed","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_8","exampleIds":["paths/~1credit-offers~1{credit_offer_id}~1simulations/post/responses/401/content/application~1problem+json/examples/missing_token","paths/~1credit-offers~1{credit_offer_id}~1simulations/post/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1credit-offers~1{credit_offer_id}~1simulations/post/responses/401/content/application~1problem+json/examples/token_expired"]}},"schemaId":"schema_8","exampleIds":["paths/~1credit-offers~1{credit_offer_id}~1simulations/post/responses/401/content/application~1problem+json/examples/missing_token","paths/~1credit-offers~1{credit_offer_id}~1simulations/post/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1credit-offers~1{credit_offer_id}~1simulations/post/responses/401/content/application~1problem+json/examples/token_expired"]},{"code":"404","description":"Resource not found","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_44","exampleIds":["paths/~1credit-offers~1{credit_offer_id}~1simulations/post/responses/404/content/application~1problem+json/examples/credit_offer_not_found"]}},"schemaId":"schema_44","exampleIds":["paths/~1credit-offers~1{credit_offer_id}~1simulations/post/responses/404/content/application~1problem+json/examples/credit_offer_not_found"]},{"code":"422","description":"Validation failed","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_45","exampleIds":["paths/~1credit-offers~1{credit_offer_id}~1simulations/post/responses/422/content/application~1problem+json/examples/offer_expired","paths/~1credit-offers~1{credit_offer_id}~1simulations/post/responses/422/content/application~1problem+json/examples/offer_already_accepted","paths/~1credit-offers~1{credit_offer_id}~1simulations/post/responses/422/content/application~1problem+json/examples/invalid_amount","paths/~1credit-offers~1{credit_offer_id}~1simulations/post/responses/422/content/application~1problem+json/examples/invalid_installments"]}},"schemaId":"schema_45","exampleIds":["paths/~1credit-offers~1{credit_offer_id}~1simulations/post/responses/422/content/application~1problem+json/examples/offer_expired","paths/~1credit-offers~1{credit_offer_id}~1simulations/post/responses/422/content/application~1problem+json/examples/offer_already_accepted","paths/~1credit-offers~1{credit_offer_id}~1simulations/post/responses/422/content/application~1problem+json/examples/invalid_amount","paths/~1credit-offers~1{credit_offer_id}~1simulations/post/responses/422/content/application~1problem+json/examples/invalid_installments"]},{"code":"429","description":"Rate limit exceeded","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_3","exampleIds":["paths/~1credit-offers~1{credit_offer_id}~1simulations/post/responses/429/content/application~1problem+json/example"]}},"schemaId":"schema_3","exampleIds":["paths/~1credit-offers~1{credit_offer_id}~1simulations/post/responses/429/content/application~1problem+json/example"],"headers":{"Retry-After":{"schema":{"type":"integer"},"description":"Seconds until the rate limit resets"}},"headerSchemaId":"schema_4"},{"code":"500","description":"Internal server error","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_5","exampleIds":["paths/~1credit-offers~1{credit_offer_id}~1simulations/post/responses/500/content/application~1problem+json/example"]}},"schemaId":"schema_5","exampleIds":["paths/~1credit-offers~1{credit_offer_id}~1simulations/post/responses/500/content/application~1problem+json/example"]}],"pointer":"/paths/~1credit-offers~1{credit_offer_id}~1simulations/post/responses"}],"panels":[{"children":[{"kind":"response","responseCodes":[{"code":"201","schemaId":"components/schemas/Simulation","exampleIds":["paths/~1credit-offers~1{credit_offer_id}~1simulations/post/responses/201/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/Simulation","exampleIds":["paths/~1credit-offers~1{credit_offer_id}~1simulations/post/responses/201/content/application~1json/example"]}}},{"code":"400","schemaId":"schema_7","exampleIds":["paths/~1credit-offers~1{credit_offer_id}~1simulations/post/responses/400/content/application~1problem+json/examples/invalid_content_type","paths/~1credit-offers~1{credit_offer_id}~1simulations/post/responses/400/content/application~1problem+json/examples/malformed_body"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_7","exampleIds":["paths/~1credit-offers~1{credit_offer_id}~1simulations/post/responses/400/content/application~1problem+json/examples/invalid_content_type","paths/~1credit-offers~1{credit_offer_id}~1simulations/post/responses/400/content/application~1problem+json/examples/malformed_body"]}}},{"code":"401","schemaId":"schema_8","exampleIds":["paths/~1credit-offers~1{credit_offer_id}~1simulations/post/responses/401/content/application~1problem+json/examples/missing_token","paths/~1credit-offers~1{credit_offer_id}~1simulations/post/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1credit-offers~1{credit_offer_id}~1simulations/post/responses/401/content/application~1problem+json/examples/token_expired"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_8","exampleIds":["paths/~1credit-offers~1{credit_offer_id}~1simulations/post/responses/401/content/application~1problem+json/examples/missing_token","paths/~1credit-offers~1{credit_offer_id}~1simulations/post/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1credit-offers~1{credit_offer_id}~1simulations/post/responses/401/content/application~1problem+json/examples/token_expired"]}}},{"code":"404","schemaId":"schema_44","exampleIds":["paths/~1credit-offers~1{credit_offer_id}~1simulations/post/responses/404/content/application~1problem+json/examples/credit_offer_not_found"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_44","exampleIds":["paths/~1credit-offers~1{credit_offer_id}~1simulations/post/responses/404/content/application~1problem+json/examples/credit_offer_not_found"]}}},{"code":"422","schemaId":"schema_45","exampleIds":["paths/~1credit-offers~1{credit_offer_id}~1simulations/post/responses/422/content/application~1problem+json/examples/offer_expired","paths/~1credit-offers~1{credit_offer_id}~1simulations/post/responses/422/content/application~1problem+json/examples/offer_already_accepted","paths/~1credit-offers~1{credit_offer_id}~1simulations/post/responses/422/content/application~1problem+json/examples/invalid_amount","paths/~1credit-offers~1{credit_offer_id}~1simulations/post/responses/422/content/application~1problem+json/examples/invalid_installments"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_45","exampleIds":["paths/~1credit-offers~1{credit_offer_id}~1simulations/post/responses/422/content/application~1problem+json/examples/offer_expired","paths/~1credit-offers~1{credit_offer_id}~1simulations/post/responses/422/content/application~1problem+json/examples/offer_already_accepted","paths/~1credit-offers~1{credit_offer_id}~1simulations/post/responses/422/content/application~1problem+json/examples/invalid_amount","paths/~1credit-offers~1{credit_offer_id}~1simulations/post/responses/422/content/application~1problem+json/examples/invalid_installments"]}}},{"code":"429","schemaId":"schema_3","exampleIds":["paths/~1credit-offers~1{credit_offer_id}~1simulations/post/responses/429/content/application~1problem+json/example"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_3","exampleIds":["paths/~1credit-offers~1{credit_offer_id}~1simulations/post/responses/429/content/application~1problem+json/example"]}}},{"code":"500","schemaId":"schema_5","exampleIds":["paths/~1credit-offers~1{credit_offer_id}~1simulations/post/responses/500/content/application~1problem+json/example"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_5","exampleIds":["paths/~1credit-offers~1{credit_offer_id}~1simulations/post/responses/500/content/application~1problem+json/example"]}}}],"examples":[]}]}]}]},"httpPath":"/credit-offers/{credit_offer_id}/simulations"},{"label":"Create a loan","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/en-us/apis/openapi/loans/createloan","routeSlug":"/en-us/apis/openapi/loans/createloan","metadata":{"seo":{"title":"Create a loan","description":"POST /loans"}},"content":{"contentType":"item","itemVariant":"httpItem","meta":{"sourceId":"createLoan","name":"Create a loan","isWebhook":false,"pointer":"/paths/~1loans/post","hasSamples":true},"children":[{"nodeType":"container","children":[{"nodeType":"header","level":2,"label":"Create a loan","isWebhook":false,"showPageActions":true}],"panels":[]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Request","labelTranslationKey":"request","deepLinkSuffix":"request"},{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"tag","tag":"html","attributes":{"name":"div","attrs":{"className":"endpoint-url"}},"children":[{"$$mdtype":"Node","type":"tag","tag":"html","attributes":{"name":"span","attrs":{"className":"mb mb--post"}},"children":[{"$$mdtype":"Node","type":"text","attributes":{"content":"POST"},"children":[]}]},{"$$mdtype":"Node","type":"text","attributes":{"content":" /loans"},"children":[]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Accept a credit offer and create a loan"},"children":[]}]}]}]},{"nodeType":"security","requirements":[{"schemes":[{"name":"bearerAuth","scopes":[],"type":"http","scheme":"bearer","bearerFormat":"JWT","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"JWT token obtained via OAuth2 Client Credentials. Send "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"POST /auth/token"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"with your credentials ("},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"client_id"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" and "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"client_secret"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":") in the"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Authorization: Basic base64(client_id:client_secret)"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" header to receive an"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"access token. Include the token in all requests:"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Authorization: Bearer <token>"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":". The token expires in 1 hour (3600s)."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Prefixes: "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"dinie_cs_live_"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" (production), "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"dinie_cs_test_"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" (sandbox)."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The returned token is prefixed with "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"dinie_at_"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]}]}]}]},{"nodeType":"item-content","variant":"body","label":"Request Body","labelTranslationKey":"body","required":true,"mediaTypes":["application/json"],"mediaTypeSchemas":{"application/json":{"schemaId":"components/schemas/CreateLoanRequest","exampleIds":["paths/~1loans/post/requestBody/content/application~1json/example"]}},"schemaId":"components/schemas/CreateLoanRequest","exampleIds":["paths/~1loans/post/requestBody/content/application~1json/example"],"pointer":"/paths/~1loans/post/requestBody"}],"panels":[{"children":[{"kind":"code-sample","source":{"kind":"code-sample","operationType":"http","method":"POST","path":"/loans","servers":[{"url":"/_mock/en-us/apis/openapi","description":"Mock server","isMockServer":true},{"url":"https://api.dinie.com/api/v3","description":"Production"},{"url":"https://api-dev.dinietech.io/api/v3","description":"Sandbox"}],"parameters":{"path":[],"query":[],"querystring":[],"header":[],"cookie":[]},"security":[{"schemes":[{"id":"bearerAuth","type":"http","scheme":"bearer","bearerFormat":"JWT"}],"scopes":[]}],"requestBody":{"application/json":{"schemaId":"components/schemas/CreateLoanRequest","exampleIds":["paths/~1loans/post/requestBody/content/application~1json/example"]}},"responseCodes":["201","400","401","404","409","422","429","500"],"pointer":"/loans","href":"loans/createloan","openApiOperationId":"createLoan","summary":"Create a loan"},"definitionSamples":[{"lang":"curl","source":"curl -X POST https://api.dinie.com/api/v3/loans \\\n  -H \"Authorization: Bearer $DINIE_API_TOKEN\" \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\n    \"credit_offer_id\": \"co_550e8400e29b41d4a716446655440000\",\n    \"simulation_id\": \"sim_550e8400e29b41d4a716446655440001\",\n    \"installment_count\": 4,\n    \"installment_amount\": 7997.34,\n    \"first_due_date\": \"2026-04-03\"\n  }'\n"},{"lang":"Python","source":"from dinie import Dinie\n\nclient = Dinie(\n    client_id=\"dinie_ci_abc123\",\n    client_secret=\"dinie_cs_live_xyz789\"\n)\n\n# Create a loan from a simulation\nloan = client.loans.create(\n    credit_offer_id=\"co_550e8400e29b41d4a716446655440000\",\n    simulation_id=\"sim_550e8400e29b41d4a716446655440001\",\n    installment_count=4,\n    installment_amount=7997.34,\n    first_due_date=\"2026-04-03\"\n)\n\nprint(loan.id)      # \"ln_550e8400...\"\nprint(loan.status)  # \"awaiting_signatures\"\n"},{"lang":"Node.js","source":"const { Dinie } = require(\"dinie\");\n\nconst client = new Dinie({\n  clientId: \"dinie_ci_abc123\",\n  clientSecret: \"dinie_cs_live_xyz789\",\n});\n\n// Create a loan from a simulation\nconst loan = await client.loans.create({\n  creditOfferId: \"co_550e8400e29b41d4a716446655440000\",\n  simulationId: \"sim_550e8400e29b41d4a716446655440001\",\n  installmentCount: 4,\n  installmentAmount: 7997.34,\n  firstDueDate: \"2026-04-03\",\n});\n\nconsole.log(loan.id);      // \"ln_550e8400...\"\nconsole.log(loan.status);  // \"awaiting_signatures\"\n"},{"lang":"Ruby","source":"require \"dinie\"\n\nclient = Dinie::Client.new(\n  client_id: \"dinie_ci_abc123\",\n  client_secret: \"dinie_cs_live_xyz789\"\n)\n\n# Create a loan from a simulation\nloan = client.loans.create(\n  credit_offer_id: \"co_550e8400e29b41d4a716446655440000\",\n  simulation_id: \"sim_550e8400e29b41d4a716446655440001\",\n  installment_count: 4,\n  installment_amount: 7997.34,\n  first_due_date: \"2026-04-03\"\n)\n\nputs loan.id      # \"ln_550e8400...\"\nputs loan.status  # \"awaiting_signatures\"\n"}],"isWebhook":false,"hideReplay":false,"servers":[{"url":"/_mock/en-us/apis/openapi","description":"Mock server","isMockServer":true},{"url":"https://api.dinie.com/api/v3","description":"Production"},{"url":"https://api-dev.dinietech.io/api/v3","description":"Sandbox"}],"schemaId":"components/schemas/CreateLoanRequest","exampleIds":["paths/~1loans/post/requestBody/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeSchemas":{"application/json":{"schemaId":"components/schemas/CreateLoanRequest","exampleIds":["paths/~1loans/post/requestBody/content/application~1json/example"]}},"examples":[{}]}]}]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Responses","labelTranslationKey":"responses","deepLinkSuffix":"responses"},{"nodeType":"item-content","variant":"responses","responses":[{"code":"201","description":"Loan created","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/Loan","exampleIds":["paths/~1loans/post/responses/201/content/application~1json/example"]}},"schemaId":"components/schemas/Loan","exampleIds":["paths/~1loans/post/responses/201/content/application~1json/example"]},{"code":"400","description":"Bad request","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_7","exampleIds":["paths/~1loans/post/responses/400/content/application~1problem+json/examples/invalid_content_type","paths/~1loans/post/responses/400/content/application~1problem+json/examples/malformed_body"]}},"schemaId":"schema_7","exampleIds":["paths/~1loans/post/responses/400/content/application~1problem+json/examples/invalid_content_type","paths/~1loans/post/responses/400/content/application~1problem+json/examples/malformed_body"]},{"code":"401","description":"Authentication failed","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_8","exampleIds":["paths/~1loans/post/responses/401/content/application~1problem+json/examples/missing_token","paths/~1loans/post/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1loans/post/responses/401/content/application~1problem+json/examples/token_expired"]}},"schemaId":"schema_8","exampleIds":["paths/~1loans/post/responses/401/content/application~1problem+json/examples/missing_token","paths/~1loans/post/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1loans/post/responses/401/content/application~1problem+json/examples/token_expired"]},{"code":"404","description":"Resource not found","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_46","exampleIds":["paths/~1loans/post/responses/404/content/application~1problem+json/examples/credit_offer_not_found"]}},"schemaId":"schema_46","exampleIds":["paths/~1loans/post/responses/404/content/application~1problem+json/examples/credit_offer_not_found"]},{"code":"409","description":"Conflict","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_47","exampleIds":["paths/~1loans/post/responses/409/content/application~1problem+json/examples/offer_already_accepted","paths/~1loans/post/responses/409/content/application~1problem+json/examples/withdrawal_locked"]}},"schemaId":"schema_47","exampleIds":["paths/~1loans/post/responses/409/content/application~1problem+json/examples/offer_already_accepted","paths/~1loans/post/responses/409/content/application~1problem+json/examples/withdrawal_locked"]},{"code":"422","description":"Validation failed","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_48","exampleIds":["paths/~1loans/post/responses/422/content/application~1problem+json/examples/missing_required_field","paths/~1loans/post/responses/422/content/application~1problem+json/examples/offer_expired","paths/~1loans/post/responses/422/content/application~1problem+json/examples/kyc_incomplete","paths/~1loans/post/responses/422/content/application~1problem+json/examples/invalid_amount","paths/~1loans/post/responses/422/content/application~1problem+json/examples/invalid_installments","paths/~1loans/post/responses/422/content/application~1problem+json/examples/simulation_mismatch"]}},"schemaId":"schema_48","exampleIds":["paths/~1loans/post/responses/422/content/application~1problem+json/examples/missing_required_field","paths/~1loans/post/responses/422/content/application~1problem+json/examples/offer_expired","paths/~1loans/post/responses/422/content/application~1problem+json/examples/kyc_incomplete","paths/~1loans/post/responses/422/content/application~1problem+json/examples/invalid_amount","paths/~1loans/post/responses/422/content/application~1problem+json/examples/invalid_installments","paths/~1loans/post/responses/422/content/application~1problem+json/examples/simulation_mismatch"]},{"code":"429","description":"Rate limit exceeded","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_3","exampleIds":["paths/~1loans/post/responses/429/content/application~1problem+json/example"]}},"schemaId":"schema_3","exampleIds":["paths/~1loans/post/responses/429/content/application~1problem+json/example"],"headers":{"Retry-After":{"schema":{"type":"integer"},"description":"Seconds until the rate limit resets"}},"headerSchemaId":"schema_4"},{"code":"500","description":"Internal server error","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_5","exampleIds":["paths/~1loans/post/responses/500/content/application~1problem+json/example"]}},"schemaId":"schema_5","exampleIds":["paths/~1loans/post/responses/500/content/application~1problem+json/example"]}],"pointer":"/paths/~1loans/post/responses"}],"panels":[{"children":[{"kind":"response","responseCodes":[{"code":"201","schemaId":"components/schemas/Loan","exampleIds":["paths/~1loans/post/responses/201/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/Loan","exampleIds":["paths/~1loans/post/responses/201/content/application~1json/example"]}}},{"code":"400","schemaId":"schema_7","exampleIds":["paths/~1loans/post/responses/400/content/application~1problem+json/examples/invalid_content_type","paths/~1loans/post/responses/400/content/application~1problem+json/examples/malformed_body"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_7","exampleIds":["paths/~1loans/post/responses/400/content/application~1problem+json/examples/invalid_content_type","paths/~1loans/post/responses/400/content/application~1problem+json/examples/malformed_body"]}}},{"code":"401","schemaId":"schema_8","exampleIds":["paths/~1loans/post/responses/401/content/application~1problem+json/examples/missing_token","paths/~1loans/post/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1loans/post/responses/401/content/application~1problem+json/examples/token_expired"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_8","exampleIds":["paths/~1loans/post/responses/401/content/application~1problem+json/examples/missing_token","paths/~1loans/post/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1loans/post/responses/401/content/application~1problem+json/examples/token_expired"]}}},{"code":"404","schemaId":"schema_46","exampleIds":["paths/~1loans/post/responses/404/content/application~1problem+json/examples/credit_offer_not_found"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_46","exampleIds":["paths/~1loans/post/responses/404/content/application~1problem+json/examples/credit_offer_not_found"]}}},{"code":"409","schemaId":"schema_47","exampleIds":["paths/~1loans/post/responses/409/content/application~1problem+json/examples/offer_already_accepted","paths/~1loans/post/responses/409/content/application~1problem+json/examples/withdrawal_locked"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_47","exampleIds":["paths/~1loans/post/responses/409/content/application~1problem+json/examples/offer_already_accepted","paths/~1loans/post/responses/409/content/application~1problem+json/examples/withdrawal_locked"]}}},{"code":"422","schemaId":"schema_48","exampleIds":["paths/~1loans/post/responses/422/content/application~1problem+json/examples/missing_required_field","paths/~1loans/post/responses/422/content/application~1problem+json/examples/offer_expired","paths/~1loans/post/responses/422/content/application~1problem+json/examples/kyc_incomplete","paths/~1loans/post/responses/422/content/application~1problem+json/examples/invalid_amount","paths/~1loans/post/responses/422/content/application~1problem+json/examples/invalid_installments","paths/~1loans/post/responses/422/content/application~1problem+json/examples/simulation_mismatch"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_48","exampleIds":["paths/~1loans/post/responses/422/content/application~1problem+json/examples/missing_required_field","paths/~1loans/post/responses/422/content/application~1problem+json/examples/offer_expired","paths/~1loans/post/responses/422/content/application~1problem+json/examples/kyc_incomplete","paths/~1loans/post/responses/422/content/application~1problem+json/examples/invalid_amount","paths/~1loans/post/responses/422/content/application~1problem+json/examples/invalid_installments","paths/~1loans/post/responses/422/content/application~1problem+json/examples/simulation_mismatch"]}}},{"code":"429","schemaId":"schema_3","exampleIds":["paths/~1loans/post/responses/429/content/application~1problem+json/example"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_3","exampleIds":["paths/~1loans/post/responses/429/content/application~1problem+json/example"]}}},{"code":"500","schemaId":"schema_5","exampleIds":["paths/~1loans/post/responses/500/content/application~1problem+json/example"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_5","exampleIds":["paths/~1loans/post/responses/500/content/application~1problem+json/example"]}}}],"examples":[]}]}]}]},"httpPath":"/loans"},{"label":"Get a loan","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/en-us/apis/openapi/loans/getloan","routeSlug":"/en-us/apis/openapi/loans/getloan","metadata":{"seo":{"title":"Get a loan","description":"GET /loans/{loan_id}"}},"content":{"contentType":"item","itemVariant":"httpItem","meta":{"sourceId":"getLoan","name":"Get a loan","isWebhook":false,"pointer":"/paths/~1loans~1{loan_id}/get","hasSamples":true},"children":[{"nodeType":"container","children":[{"nodeType":"header","level":2,"label":"Get a loan","isWebhook":false,"showPageActions":true}],"panels":[]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Request","labelTranslationKey":"request","deepLinkSuffix":"request"},{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"tag","tag":"html","attributes":{"name":"div","attrs":{"className":"endpoint-url"}},"children":[{"$$mdtype":"Node","type":"tag","tag":"html","attributes":{"name":"span","attrs":{"className":"mb mb--get"}},"children":[{"$$mdtype":"Node","type":"text","attributes":{"content":"GET"},"children":[]}]},{"$$mdtype":"Node","type":"text","attributes":{"content":" /loans/{loan_id}"},"children":[]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Get a loan"},"children":[]}]}]}]},{"nodeType":"security","requirements":[{"schemes":[{"name":"bearerAuth","scopes":[],"type":"http","scheme":"bearer","bearerFormat":"JWT","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"JWT token obtained via OAuth2 Client Credentials. Send "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"POST /auth/token"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"with your credentials ("},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"client_id"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" and "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"client_secret"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":") in the"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Authorization: Basic base64(client_id:client_secret)"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" header to receive an"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"access token. Include the token in all requests:"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Authorization: Bearer <token>"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":". The token expires in 1 hour (3600s)."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Prefixes: "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"dinie_cs_live_"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" (production), "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"dinie_cs_test_"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" (sandbox)."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The returned token is prefixed with "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"dinie_at_"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]}]}]}]},{"nodeType":"item-content","variant":"path","label":"Path","labelTranslationKey":"path","parameters":[{"name":"loan_id","in":"path","schemaId":"schema_49","description":"Loan ID","required":true}],"pointer":"/paths/~1loans~1{loan_id}/get/parameters"}],"panels":[{"children":[{"kind":"code-sample","source":{"kind":"code-sample","operationType":"http","method":"GET","path":"/loans/{loan_id}","servers":[{"url":"/_mock/en-us/apis/openapi","description":"Mock server","isMockServer":true},{"url":"https://api.dinie.com/api/v3","description":"Production"},{"url":"https://api-dev.dinietech.io/api/v3","description":"Sandbox"}],"parameters":{"path":[{"name":"loan_id","in":"path","required":true,"example":"ln_550e8400e29b41d4a716446655440000","schemaId":"components/schemas/LoanId"}],"query":[],"querystring":[],"header":[],"cookie":[]},"security":[{"schemes":[{"id":"bearerAuth","type":"http","scheme":"bearer","bearerFormat":"JWT"}],"scopes":[]}],"responseCodes":["200","401","404","429","500"],"pointer":"/loans/{loan_id}","href":"loans/getloan","openApiOperationId":"getLoan","summary":"Get a loan"},"definitionSamples":[{"lang":"curl","source":"curl https://api.dinie.com/api/v3/loans/ln_550e8400e29b41d4a716446655440001 \\\n  -H \"Authorization: Bearer $DINIE_API_TOKEN\"\n"},{"lang":"Python","source":"from dinie import Dinie\n\nclient = Dinie(\n    client_id=\"dinie_ci_abc123\",\n    client_secret=\"dinie_cs_live_xyz789\"\n)\n\n# Retrieve a loan\nloan = client.loans.retrieve(\"ln_550e8400e29b41d4a716446655440001\")\n\nprint(loan.status)              # \"active\"\nprint(loan.requested_amount)    # 25000.00\nprint(loan.principal_amount)    # 29375.00\nprint(loan.ccb_number)          # \"CCB-2026-001234\"\nprint(loan.signing_url)         # None (already signed)\n"},{"lang":"Node.js","source":"const { Dinie } = require(\"dinie\");\n\nconst client = new Dinie({\n  clientId: \"dinie_ci_abc123\",\n  clientSecret: \"dinie_cs_live_xyz789\",\n});\n\n// Retrieve a loan\nconst loan = await client.loans.retrieve(\n  \"ln_550e8400e29b41d4a716446655440001\"\n);\n\nconsole.log(loan.status);              // \"active\"\nconsole.log(loan.requestedAmount);     // 25000.00\nconsole.log(loan.principalAmount);     // 29375.00\nconsole.log(loan.ccbNumber);           // \"CCB-2026-001234\"\nconsole.log(loan.signingUrl);          // null (already signed)\n"},{"lang":"Ruby","source":"require \"dinie\"\n\nclient = Dinie::Client.new(\n  client_id: \"dinie_ci_abc123\",\n  client_secret: \"dinie_cs_live_xyz789\"\n)\n\n# Retrieve a loan\nloan = client.loans.retrieve(\"ln_550e8400e29b41d4a716446655440001\")\n\nputs loan.status              # \"active\"\nputs loan.requested_amount    # 25000.00\nputs loan.principal_amount    # 29375.00\nputs loan.ccb_number          # \"CCB-2026-001234\"\nputs loan.signing_url         # nil (already signed)\n"}],"isWebhook":false,"hideReplay":false,"servers":[{"url":"/_mock/en-us/apis/openapi","description":"Mock server","isMockServer":true},{"url":"https://api.dinie.com/api/v3","description":"Production"},{"url":"https://api-dev.dinietech.io/api/v3","description":"Sandbox"}],"examples":[]}]}]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Responses","labelTranslationKey":"responses","deepLinkSuffix":"responses"},{"nodeType":"item-content","variant":"responses","responses":[{"code":"200","description":"Loan details","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/Loan","exampleIds":["paths/~1loans~1{loan_id}/get/responses/200/content/application~1json/example"]}},"schemaId":"components/schemas/Loan","exampleIds":["paths/~1loans~1{loan_id}/get/responses/200/content/application~1json/example"]},{"code":"401","description":"Authentication failed","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_8","exampleIds":["paths/~1loans~1{loan_id}/get/responses/401/content/application~1problem+json/examples/missing_token","paths/~1loans~1{loan_id}/get/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1loans~1{loan_id}/get/responses/401/content/application~1problem+json/examples/token_expired"]}},"schemaId":"schema_8","exampleIds":["paths/~1loans~1{loan_id}/get/responses/401/content/application~1problem+json/examples/missing_token","paths/~1loans~1{loan_id}/get/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1loans~1{loan_id}/get/responses/401/content/application~1problem+json/examples/token_expired"]},{"code":"404","description":"Resource not found","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_50","exampleIds":["paths/~1loans~1{loan_id}/get/responses/404/content/application~1problem+json/examples/loan_not_found"]}},"schemaId":"schema_50","exampleIds":["paths/~1loans~1{loan_id}/get/responses/404/content/application~1problem+json/examples/loan_not_found"]},{"code":"429","description":"Rate limit exceeded","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_3","exampleIds":["paths/~1loans~1{loan_id}/get/responses/429/content/application~1problem+json/example"]}},"schemaId":"schema_3","exampleIds":["paths/~1loans~1{loan_id}/get/responses/429/content/application~1problem+json/example"],"headers":{"Retry-After":{"schema":{"type":"integer"},"description":"Seconds until the rate limit resets"}},"headerSchemaId":"schema_4"},{"code":"500","description":"Internal server error","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_5","exampleIds":["paths/~1loans~1{loan_id}/get/responses/500/content/application~1problem+json/example"]}},"schemaId":"schema_5","exampleIds":["paths/~1loans~1{loan_id}/get/responses/500/content/application~1problem+json/example"]}],"pointer":"/paths/~1loans~1{loan_id}/get/responses"}],"panels":[{"children":[{"kind":"response","responseCodes":[{"code":"200","schemaId":"components/schemas/Loan","exampleIds":["paths/~1loans~1{loan_id}/get/responses/200/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/Loan","exampleIds":["paths/~1loans~1{loan_id}/get/responses/200/content/application~1json/example"]}}},{"code":"401","schemaId":"schema_8","exampleIds":["paths/~1loans~1{loan_id}/get/responses/401/content/application~1problem+json/examples/missing_token","paths/~1loans~1{loan_id}/get/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1loans~1{loan_id}/get/responses/401/content/application~1problem+json/examples/token_expired"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_8","exampleIds":["paths/~1loans~1{loan_id}/get/responses/401/content/application~1problem+json/examples/missing_token","paths/~1loans~1{loan_id}/get/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1loans~1{loan_id}/get/responses/401/content/application~1problem+json/examples/token_expired"]}}},{"code":"404","schemaId":"schema_50","exampleIds":["paths/~1loans~1{loan_id}/get/responses/404/content/application~1problem+json/examples/loan_not_found"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_50","exampleIds":["paths/~1loans~1{loan_id}/get/responses/404/content/application~1problem+json/examples/loan_not_found"]}}},{"code":"429","schemaId":"schema_3","exampleIds":["paths/~1loans~1{loan_id}/get/responses/429/content/application~1problem+json/example"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_3","exampleIds":["paths/~1loans~1{loan_id}/get/responses/429/content/application~1problem+json/example"]}}},{"code":"500","schemaId":"schema_5","exampleIds":["paths/~1loans~1{loan_id}/get/responses/500/content/application~1problem+json/example"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_5","exampleIds":["paths/~1loans~1{loan_id}/get/responses/500/content/application~1problem+json/example"]}}}],"examples":[]}]}]}]},"httpPath":"/loans/{loan_id}"},{"label":"List transactions","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/en-us/apis/openapi/loans/listtransactions","routeSlug":"/en-us/apis/openapi/loans/listtransactions","metadata":{"seo":{"title":"List transactions","description":"GET /loans/{loan_id}/transactions"}},"content":{"contentType":"item","itemVariant":"httpItem","meta":{"sourceId":"listTransactions","name":"List transactions","isWebhook":false,"pointer":"/paths/~1loans~1{loan_id}~1transactions/get","hasSamples":true},"children":[{"nodeType":"container","children":[{"nodeType":"header","level":2,"label":"List transactions","isWebhook":false,"showPageActions":true}],"panels":[]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Request","labelTranslationKey":"request","deepLinkSuffix":"request"},{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"tag","tag":"html","attributes":{"name":"div","attrs":{"className":"endpoint-url"}},"children":[{"$$mdtype":"Node","type":"tag","tag":"html","attributes":{"name":"span","attrs":{"className":"mb mb--get"}},"children":[{"$$mdtype":"Node","type":"text","attributes":{"content":"GET"},"children":[]}]},{"$$mdtype":"Node","type":"text","attributes":{"content":" /loans/{loan_id}/transactions"},"children":[]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"List a loan's transactions"},"children":[]}]}]}]},{"nodeType":"security","requirements":[{"schemes":[{"name":"bearerAuth","scopes":[],"type":"http","scheme":"bearer","bearerFormat":"JWT","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"JWT token obtained via OAuth2 Client Credentials. Send "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"POST /auth/token"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"with your credentials ("},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"client_id"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" and "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"client_secret"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":") in the"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Authorization: Basic base64(client_id:client_secret)"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" header to receive an"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"access token. Include the token in all requests:"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Authorization: Bearer <token>"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":". The token expires in 1 hour (3600s)."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Prefixes: "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"dinie_cs_live_"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" (production), "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"dinie_cs_test_"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" (sandbox)."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The returned token is prefixed with "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"dinie_at_"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]}]}]}]},{"nodeType":"item-content","variant":"path","label":"Path","labelTranslationKey":"path","parameters":[{"name":"loan_id","in":"path","schemaId":"schema_49","description":"Loan ID","required":true}],"pointer":"/paths/~1loans~1{loan_id}~1transactions/get/parameters"},{"nodeType":"item-content","variant":"query","label":"Query","labelTranslationKey":"query","parameters":[{"name":"starting_after","in":"query","schemaId":"schema_6","description":"Prefixed ID of the last item from the previous page."},{"name":"limit","in":"query","schemaId":"schema_19","description":"Number of items to return. Min: 1, Max: 100."}],"pointer":"/paths/~1loans~1{loan_id}~1transactions/get/parameters"}],"panels":[{"children":[{"kind":"code-sample","source":{"kind":"code-sample","operationType":"http","method":"GET","path":"/loans/{loan_id}/transactions","servers":[{"url":"/_mock/en-us/apis/openapi","description":"Mock server","isMockServer":true},{"url":"https://api.dinie.com/api/v3","description":"Production"},{"url":"https://api-dev.dinietech.io/api/v3","description":"Sandbox"}],"parameters":{"path":[{"name":"loan_id","in":"path","required":true,"example":"ln_550e8400e29b41d4a716446655440000","schemaId":"components/schemas/LoanId"}],"query":[{"name":"starting_after","in":"query","schemaId":"schema_6"},{"name":"limit","in":"query","schemaId":"schema_19"}],"querystring":[],"header":[],"cookie":[]},"security":[{"schemes":[{"id":"bearerAuth","type":"http","scheme":"bearer","bearerFormat":"JWT"}],"scopes":[]}],"responseCodes":["200","400","401","404","429","500"],"pointer":"/loans/{loan_id}/transactions","href":"loans/listtransactions","openApiOperationId":"listTransactions","summary":"List transactions"},"definitionSamples":[{"lang":"curl","source":"curl \"https://api.dinie.com/api/v3/loans/ln_550e8400e29b41d4a716446655440001/transactions?limit=25\" \\\n  -H \"Authorization: Bearer $DINIE_API_TOKEN\"\n"},{"lang":"Python","source":"from dinie import Dinie\n\nclient = Dinie(\n    client_id=\"dinie_ci_abc123\",\n    client_secret=\"dinie_cs_live_xyz789\"\n)\n\n# List installments for a loan\ntransactions = client.loans.list_transactions(\n    \"ln_550e8400e29b41d4a716446655440001\",\n    limit=25\n)\n\nfor tx in transactions.data:\n    print(f\"{tx.due_date}: R$ {tx.amount_due} ({tx.status})\")\n    # \"2026-04-03: R$ 2500.00 (paid)\"\n    # \"2026-05-03: R$ 2500.00 (pending)\"\n"},{"lang":"Node.js","source":"const { Dinie } = require(\"dinie\");\n\nconst client = new Dinie({\n  clientId: \"dinie_ci_abc123\",\n  clientSecret: \"dinie_cs_live_xyz789\",\n});\n\n// List installments for a loan\nconst transactions = await client.loans.listTransactions(\n  \"ln_550e8400e29b41d4a716446655440001\",\n  { limit: 25 }\n);\n\nfor (const tx of transactions.data) {\n  console.log(`${tx.dueDate}: R$ ${tx.amountDue} (${tx.status})`);\n  // \"2026-04-03: R$ 2500.00 (paid)\"\n  // \"2026-05-03: R$ 2500.00 (pending)\"\n}\n"},{"lang":"Ruby","source":"require \"dinie\"\n\nclient = Dinie::Client.new(\n  client_id: \"dinie_ci_abc123\",\n  client_secret: \"dinie_cs_live_xyz789\"\n)\n\n# List installments for a loan\ntransactions = client.loans.list_transactions(\n  \"ln_550e8400e29b41d4a716446655440001\",\n  limit: 25\n)\n\ntransactions.data.each do |tx|\n  puts \"#{tx.due_date}: R$ #{tx.amount_due} (#{tx.status})\"\n  # \"2026-04-03: R$ 2500.00 (paid)\"\n  # \"2026-05-03: R$ 2500.00 (pending)\"\nend\n"}],"isWebhook":false,"hideReplay":false,"servers":[{"url":"/_mock/en-us/apis/openapi","description":"Mock server","isMockServer":true},{"url":"https://api.dinie.com/api/v3","description":"Production"},{"url":"https://api-dev.dinietech.io/api/v3","description":"Sandbox"}],"examples":[]}]}]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Responses","labelTranslationKey":"responses","deepLinkSuffix":"responses"},{"nodeType":"item-content","variant":"responses","responses":[{"code":"200","description":"List of transactions","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_51","exampleIds":["paths/~1loans~1{loan_id}~1transactions/get/responses/200/content/application~1json/example"]}},"schemaId":"schema_51","exampleIds":["paths/~1loans~1{loan_id}~1transactions/get/responses/200/content/application~1json/example"]},{"code":"400","description":"Bad request","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_52","exampleIds":["paths/~1loans~1{loan_id}~1transactions/get/responses/400/content/application~1problem+json/examples/invalid_limit","paths/~1loans~1{loan_id}~1transactions/get/responses/400/content/application~1problem+json/examples/invalid_cursor"]}},"schemaId":"schema_52","exampleIds":["paths/~1loans~1{loan_id}~1transactions/get/responses/400/content/application~1problem+json/examples/invalid_limit","paths/~1loans~1{loan_id}~1transactions/get/responses/400/content/application~1problem+json/examples/invalid_cursor"]},{"code":"401","description":"Authentication failed","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_8","exampleIds":["paths/~1loans~1{loan_id}~1transactions/get/responses/401/content/application~1problem+json/examples/missing_token","paths/~1loans~1{loan_id}~1transactions/get/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1loans~1{loan_id}~1transactions/get/responses/401/content/application~1problem+json/examples/token_expired"]}},"schemaId":"schema_8","exampleIds":["paths/~1loans~1{loan_id}~1transactions/get/responses/401/content/application~1problem+json/examples/missing_token","paths/~1loans~1{loan_id}~1transactions/get/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1loans~1{loan_id}~1transactions/get/responses/401/content/application~1problem+json/examples/token_expired"]},{"code":"404","description":"Resource not found","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_50","exampleIds":["paths/~1loans~1{loan_id}~1transactions/get/responses/404/content/application~1problem+json/examples/loan_not_found"]}},"schemaId":"schema_50","exampleIds":["paths/~1loans~1{loan_id}~1transactions/get/responses/404/content/application~1problem+json/examples/loan_not_found"]},{"code":"429","description":"Rate limit exceeded","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_3","exampleIds":["paths/~1loans~1{loan_id}~1transactions/get/responses/429/content/application~1problem+json/example"]}},"schemaId":"schema_3","exampleIds":["paths/~1loans~1{loan_id}~1transactions/get/responses/429/content/application~1problem+json/example"],"headers":{"Retry-After":{"schema":{"type":"integer"},"description":"Seconds until the rate limit resets"}},"headerSchemaId":"schema_4"},{"code":"500","description":"Internal server error","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_5","exampleIds":["paths/~1loans~1{loan_id}~1transactions/get/responses/500/content/application~1problem+json/example"]}},"schemaId":"schema_5","exampleIds":["paths/~1loans~1{loan_id}~1transactions/get/responses/500/content/application~1problem+json/example"]}],"pointer":"/paths/~1loans~1{loan_id}~1transactions/get/responses"}],"panels":[{"children":[{"kind":"response","responseCodes":[{"code":"200","schemaId":"schema_51","exampleIds":["paths/~1loans~1{loan_id}~1transactions/get/responses/200/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_51","exampleIds":["paths/~1loans~1{loan_id}~1transactions/get/responses/200/content/application~1json/example"]}}},{"code":"400","schemaId":"schema_52","exampleIds":["paths/~1loans~1{loan_id}~1transactions/get/responses/400/content/application~1problem+json/examples/invalid_limit","paths/~1loans~1{loan_id}~1transactions/get/responses/400/content/application~1problem+json/examples/invalid_cursor"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_52","exampleIds":["paths/~1loans~1{loan_id}~1transactions/get/responses/400/content/application~1problem+json/examples/invalid_limit","paths/~1loans~1{loan_id}~1transactions/get/responses/400/content/application~1problem+json/examples/invalid_cursor"]}}},{"code":"401","schemaId":"schema_8","exampleIds":["paths/~1loans~1{loan_id}~1transactions/get/responses/401/content/application~1problem+json/examples/missing_token","paths/~1loans~1{loan_id}~1transactions/get/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1loans~1{loan_id}~1transactions/get/responses/401/content/application~1problem+json/examples/token_expired"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_8","exampleIds":["paths/~1loans~1{loan_id}~1transactions/get/responses/401/content/application~1problem+json/examples/missing_token","paths/~1loans~1{loan_id}~1transactions/get/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1loans~1{loan_id}~1transactions/get/responses/401/content/application~1problem+json/examples/token_expired"]}}},{"code":"404","schemaId":"schema_50","exampleIds":["paths/~1loans~1{loan_id}~1transactions/get/responses/404/content/application~1problem+json/examples/loan_not_found"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_50","exampleIds":["paths/~1loans~1{loan_id}~1transactions/get/responses/404/content/application~1problem+json/examples/loan_not_found"]}}},{"code":"429","schemaId":"schema_3","exampleIds":["paths/~1loans~1{loan_id}~1transactions/get/responses/429/content/application~1problem+json/example"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_3","exampleIds":["paths/~1loans~1{loan_id}~1transactions/get/responses/429/content/application~1problem+json/example"]}}},{"code":"500","schemaId":"schema_5","exampleIds":["paths/~1loans~1{loan_id}~1transactions/get/responses/500/content/application~1problem+json/example"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_5","exampleIds":["paths/~1loans~1{loan_id}~1transactions/get/responses/500/content/application~1problem+json/example"]}}}],"examples":[]}]}]}]},"httpPath":"/loans/{loan_id}/transactions"},{"type":"separator","label":"Webhooks","variant":"secondary","content":null},{"label":"Loan created","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":true,"type":"link","link":"/en-us/apis/openapi/loans/onloancreated","routeSlug":"/en-us/apis/openapi/loans/onloancreated","metadata":{"seo":{"title":"Loan created","description":"Fires when the loan is created via POST /loans from an accepted offer.CCB contract is generated synchronously. Includes the loan, offer, and customer IDs,requested amount, number of installments, and signing_url for contract signing.The loan starts with awaiting_signatures status. Present the signing link to the customer."}},"content":{"contentType":"item","itemVariant":"httpItem","meta":{"sourceId":"onLoanCreated","name":"Loan created","isWebhook":true,"pointer":"/paths/loan.created/post","hasSamples":true},"children":[{"nodeType":"container","children":[{"nodeType":"header","level":2,"label":"Loan created","isWebhook":true,"showPageActions":true}],"panels":[]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Request","labelTranslationKey":"request","deepLinkSuffix":"request"},{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Fires when the loan is created via "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"POST /loans"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" from an accepted offer."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"CCB contract is generated synchronously. Includes the loan, offer, and customer IDs,"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"requested amount, number of installments, and "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"signing_url"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" for contract signing."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The loan starts with "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"awaiting_signatures"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" status. Present the signing link to the customer."},"children":[]}]}]}]},{"nodeType":"security","requirements":[{"schemes":[{"name":"webhookSignature","scopes":[],"type":"apiKey","in":"header","paramName":"webhook-signature","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"HMAC-SHA256 signature per the Standard Webhooks specification."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Verify using the "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"whsec_"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"-prefixed secret from endpoint creation."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The header contains base64-encoded signatures; the signed content"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"is "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"{webhook-id}.{webhook-timestamp}.{body}"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]}]}]}]},{"nodeType":"item-content","variant":"headers","label":"Headers","labelTranslationKey":"header","parameters":[{"name":"webhook-id","in":"header","schemaId":"schema_37","description":"Unique delivery ID. Use as idempotency key to deduplicate events","required":true},{"name":"webhook-timestamp","in":"header","schemaId":"schema_38","description":"Unix timestamp of the delivery attempt. Reject if older than 5 minutes (replay protection)","required":true},{"name":"webhook-signature","in":"header","schemaId":"schema_6","description":"HMAC-SHA256 signature(s) for verification per Standard Webhooks spec","required":true}],"pointer":"/paths/loan.created/post/parameters"},{"nodeType":"item-content","variant":"body","label":"Request Body","labelTranslationKey":"body","required":true,"isEvent":true,"mediaTypes":["application/json"],"mediaTypeSchemas":{"application/json":{"schemaId":"components/schemas/WebhookEvent_LoanCreated","exampleIds":["paths/loan.created/post/requestBody/content/application~1json/example"]}},"schemaId":"components/schemas/WebhookEvent_LoanCreated","exampleIds":["paths/loan.created/post/requestBody/content/application~1json/example"],"pointer":"/paths/loan.created/post/requestBody"}],"panels":[{"children":[{"kind":"code-sample","source":{"kind":"code-sample","operationType":"webhook","method":"POST","path":"loan.created","servers":[{"url":"/_mock/en-us/apis/openapi","description":"Mock server","isMockServer":true},{"url":"https://api.dinie.com/api/v3","description":"Production"},{"url":"https://api-dev.dinietech.io/api/v3","description":"Sandbox"}],"parameters":{"path":[],"query":[],"querystring":[],"header":[{"name":"webhook-id","in":"header","required":true,"example":"evt_550e8400e29b41d4a716446655440000","schemaId":"components/schemas/EventId"},{"name":"webhook-timestamp","in":"header","required":true,"schemaId":"schema_38"},{"name":"webhook-signature","in":"header","required":true,"schemaId":"schema_6"}],"cookie":[]},"security":[{"schemes":[{"id":"webhookSignature","type":"apiKey","name":"webhook-signature","in":"header"}],"scopes":[]}],"requestBody":{"application/json":{"schemaId":"components/schemas/WebhookEvent_LoanCreated","exampleIds":["paths/loan.created/post/requestBody/content/application~1json/example"]}},"responseCodes":["200","410","429","502","504","4XX","5XX"],"pointer":"loan.created","href":"loans/onloancreated","openApiOperationId":"onLoanCreated","summary":"Loan created"},"isWebhook":true,"hideReplay":false,"servers":[{"url":"/_mock/en-us/apis/openapi","description":"Mock server","isMockServer":true},{"url":"https://api.dinie.com/api/v3","description":"Production"},{"url":"https://api-dev.dinietech.io/api/v3","description":"Sandbox"}],"schemaId":"components/schemas/WebhookEvent_LoanCreated","exampleIds":["paths/loan.created/post/requestBody/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeSchemas":{"application/json":{"schemaId":"components/schemas/WebhookEvent_LoanCreated","exampleIds":["paths/loan.created/post/requestBody/content/application~1json/example"]}},"examples":[{}]}]}]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Responses","labelTranslationKey":"responses","deepLinkSuffix":"responses"},{"nodeType":"item-content","variant":"responses","responses":[{"code":"200","description":"Delivery confirmed"},{"code":"410","description":"Endpoint permanently disabled"},{"code":"429","description":"Rate-limiting, send rate reduced"},{"code":"502","description":"Server overload, rate reduced before retrying"},{"code":"504","description":"Gateway timeout, rate reduced before retrying"},{"code":"4XX","description":"Client error, failure triggers retry"},{"code":"5XX","description":"Server error, failure triggers retry"}],"pointer":"/paths/loan.created/post/responses"}],"panels":[]}]},"httpPath":"loan.created"},{"label":"Signature received","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":true,"type":"link","link":"/en-us/apis/openapi/loans/onloansignaturereceived","routeSlug":"/en-us/apis/openapi/loans/onloansignaturereceived","metadata":{"seo":{"title":"Signature received","description":"Fires each time an individual signer completes their signature on the CCB contract.Includes signer identity (name, CPF), signature timestamp, and progress count(signatures_received / signatures_required). Use it to track signing progressand notify the customer about remaining signatures."}},"content":{"contentType":"item","itemVariant":"httpItem","meta":{"sourceId":"onLoanSignatureReceived","name":"Signature received","isWebhook":true,"pointer":"/paths/loan.signature_received/post","hasSamples":true},"children":[{"nodeType":"container","children":[{"nodeType":"header","level":2,"label":"Signature received","isWebhook":true,"showPageActions":true}],"panels":[]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Request","labelTranslationKey":"request","deepLinkSuffix":"request"},{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Fires each time an individual signer completes their signature on the CCB contract."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Includes signer identity (name, CPF), signature timestamp, and progress count"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"("},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"signatures_received"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" / "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"signatures_required"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"). Use it to track signing progress"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"and notify the customer about remaining signatures."},"children":[]}]}]}]},{"nodeType":"security","requirements":[{"schemes":[{"name":"webhookSignature","scopes":[],"type":"apiKey","in":"header","paramName":"webhook-signature","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"HMAC-SHA256 signature per the Standard Webhooks specification."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Verify using the "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"whsec_"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"-prefixed secret from endpoint creation."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The header contains base64-encoded signatures; the signed content"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"is "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"{webhook-id}.{webhook-timestamp}.{body}"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]}]}]}]},{"nodeType":"item-content","variant":"headers","label":"Headers","labelTranslationKey":"header","parameters":[{"name":"webhook-id","in":"header","schemaId":"schema_37","description":"Unique delivery ID. Use as idempotency key to deduplicate events","required":true},{"name":"webhook-timestamp","in":"header","schemaId":"schema_38","description":"Unix timestamp of the delivery attempt. Reject if older than 5 minutes (replay protection)","required":true},{"name":"webhook-signature","in":"header","schemaId":"schema_6","description":"HMAC-SHA256 signature(s) for verification per Standard Webhooks spec","required":true}],"pointer":"/paths/loan.signature_received/post/parameters"},{"nodeType":"item-content","variant":"body","label":"Request Body","labelTranslationKey":"body","required":true,"isEvent":true,"mediaTypes":["application/json"],"mediaTypeSchemas":{"application/json":{"schemaId":"components/schemas/WebhookEvent_LoanSignatureReceived","exampleIds":["paths/loan.signature_received/post/requestBody/content/application~1json/example"]}},"schemaId":"components/schemas/WebhookEvent_LoanSignatureReceived","exampleIds":["paths/loan.signature_received/post/requestBody/content/application~1json/example"],"pointer":"/paths/loan.signature_received/post/requestBody"}],"panels":[{"children":[{"kind":"code-sample","source":{"kind":"code-sample","operationType":"webhook","method":"POST","path":"loan.signature_received","servers":[{"url":"/_mock/en-us/apis/openapi","description":"Mock server","isMockServer":true},{"url":"https://api.dinie.com/api/v3","description":"Production"},{"url":"https://api-dev.dinietech.io/api/v3","description":"Sandbox"}],"parameters":{"path":[],"query":[],"querystring":[],"header":[{"name":"webhook-id","in":"header","required":true,"example":"evt_550e8400e29b41d4a716446655440000","schemaId":"components/schemas/EventId"},{"name":"webhook-timestamp","in":"header","required":true,"schemaId":"schema_38"},{"name":"webhook-signature","in":"header","required":true,"schemaId":"schema_6"}],"cookie":[]},"security":[{"schemes":[{"id":"webhookSignature","type":"apiKey","name":"webhook-signature","in":"header"}],"scopes":[]}],"requestBody":{"application/json":{"schemaId":"components/schemas/WebhookEvent_LoanSignatureReceived","exampleIds":["paths/loan.signature_received/post/requestBody/content/application~1json/example"]}},"responseCodes":["200","410","429","502","504","4XX","5XX"],"pointer":"loan.signature_received","href":"loans/onloansignaturereceived","openApiOperationId":"onLoanSignatureReceived","summary":"Signature received"},"isWebhook":true,"hideReplay":false,"servers":[{"url":"/_mock/en-us/apis/openapi","description":"Mock server","isMockServer":true},{"url":"https://api.dinie.com/api/v3","description":"Production"},{"url":"https://api-dev.dinietech.io/api/v3","description":"Sandbox"}],"schemaId":"components/schemas/WebhookEvent_LoanSignatureReceived","exampleIds":["paths/loan.signature_received/post/requestBody/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeSchemas":{"application/json":{"schemaId":"components/schemas/WebhookEvent_LoanSignatureReceived","exampleIds":["paths/loan.signature_received/post/requestBody/content/application~1json/example"]}},"examples":[{}]}]}]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Responses","labelTranslationKey":"responses","deepLinkSuffix":"responses"},{"nodeType":"item-content","variant":"responses","responses":[{"code":"200","description":"Delivery confirmed"},{"code":"410","description":"Endpoint permanently disabled"},{"code":"429","description":"Rate-limiting, send rate reduced"},{"code":"502","description":"Server overload, rate reduced before retrying"},{"code":"504","description":"Gateway timeout, rate reduced before retrying"},{"code":"4XX","description":"Client error, failure triggers retry"},{"code":"5XX","description":"Server error, failure triggers retry"}],"pointer":"/paths/loan.signature_received/post/responses"}],"panels":[]}]},"httpPath":"loan.signature_received"},{"label":"Loan processing","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":true,"type":"link","link":"/en-us/apis/openapi/loans/onloanprocessing","routeSlug":"/en-us/apis/openapi/loans/onloanprocessing","metadata":{"seo":{"title":"Loan processing","description":"Fires when all required signatures are collected and disbursement is in progress.The loan transitions to processing status. Use it to inform the customer thatthe funds are being transferred."}},"content":{"contentType":"item","itemVariant":"httpItem","meta":{"sourceId":"onLoanProcessing","name":"Loan processing","isWebhook":true,"pointer":"/paths/loan.processing/post","hasSamples":true},"children":[{"nodeType":"container","children":[{"nodeType":"header","level":2,"label":"Loan processing","isWebhook":true,"showPageActions":true}],"panels":[]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Request","labelTranslationKey":"request","deepLinkSuffix":"request"},{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Fires when all required signatures are collected and disbursement is in progress."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The loan transitions to "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"processing"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" status. Use it to inform the customer that"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"the funds are being transferred."},"children":[]}]}]}]},{"nodeType":"security","requirements":[{"schemes":[{"name":"webhookSignature","scopes":[],"type":"apiKey","in":"header","paramName":"webhook-signature","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"HMAC-SHA256 signature per the Standard Webhooks specification."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Verify using the "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"whsec_"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"-prefixed secret from endpoint creation."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The header contains base64-encoded signatures; the signed content"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"is "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"{webhook-id}.{webhook-timestamp}.{body}"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]}]}]}]},{"nodeType":"item-content","variant":"headers","label":"Headers","labelTranslationKey":"header","parameters":[{"name":"webhook-id","in":"header","schemaId":"schema_37","description":"Unique delivery ID. Use as idempotency key to deduplicate events","required":true},{"name":"webhook-timestamp","in":"header","schemaId":"schema_38","description":"Unix timestamp of the delivery attempt. Reject if older than 5 minutes (replay protection)","required":true},{"name":"webhook-signature","in":"header","schemaId":"schema_6","description":"HMAC-SHA256 signature(s) for verification per Standard Webhooks spec","required":true}],"pointer":"/paths/loan.processing/post/parameters"},{"nodeType":"item-content","variant":"body","label":"Request Body","labelTranslationKey":"body","required":true,"isEvent":true,"mediaTypes":["application/json"],"mediaTypeSchemas":{"application/json":{"schemaId":"components/schemas/WebhookEvent_LoanProcessing","exampleIds":["paths/loan.processing/post/requestBody/content/application~1json/example"]}},"schemaId":"components/schemas/WebhookEvent_LoanProcessing","exampleIds":["paths/loan.processing/post/requestBody/content/application~1json/example"],"pointer":"/paths/loan.processing/post/requestBody"}],"panels":[{"children":[{"kind":"code-sample","source":{"kind":"code-sample","operationType":"webhook","method":"POST","path":"loan.processing","servers":[{"url":"/_mock/en-us/apis/openapi","description":"Mock server","isMockServer":true},{"url":"https://api.dinie.com/api/v3","description":"Production"},{"url":"https://api-dev.dinietech.io/api/v3","description":"Sandbox"}],"parameters":{"path":[],"query":[],"querystring":[],"header":[{"name":"webhook-id","in":"header","required":true,"example":"evt_550e8400e29b41d4a716446655440000","schemaId":"components/schemas/EventId"},{"name":"webhook-timestamp","in":"header","required":true,"schemaId":"schema_38"},{"name":"webhook-signature","in":"header","required":true,"schemaId":"schema_6"}],"cookie":[]},"security":[{"schemes":[{"id":"webhookSignature","type":"apiKey","name":"webhook-signature","in":"header"}],"scopes":[]}],"requestBody":{"application/json":{"schemaId":"components/schemas/WebhookEvent_LoanProcessing","exampleIds":["paths/loan.processing/post/requestBody/content/application~1json/example"]}},"responseCodes":["200","410","429","502","504","4XX","5XX"],"pointer":"loan.processing","href":"loans/onloanprocessing","openApiOperationId":"onLoanProcessing","summary":"Loan processing"},"isWebhook":true,"hideReplay":false,"servers":[{"url":"/_mock/en-us/apis/openapi","description":"Mock server","isMockServer":true},{"url":"https://api.dinie.com/api/v3","description":"Production"},{"url":"https://api-dev.dinietech.io/api/v3","description":"Sandbox"}],"schemaId":"components/schemas/WebhookEvent_LoanProcessing","exampleIds":["paths/loan.processing/post/requestBody/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeSchemas":{"application/json":{"schemaId":"components/schemas/WebhookEvent_LoanProcessing","exampleIds":["paths/loan.processing/post/requestBody/content/application~1json/example"]}},"examples":[{}]}]}]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Responses","labelTranslationKey":"responses","deepLinkSuffix":"responses"},{"nodeType":"item-content","variant":"responses","responses":[{"code":"200","description":"Delivery confirmed"},{"code":"410","description":"Endpoint permanently disabled"},{"code":"429","description":"Rate-limiting, send rate reduced"},{"code":"502","description":"Server overload, rate reduced before retrying"},{"code":"504","description":"Gateway timeout, rate reduced before retrying"},{"code":"4XX","description":"Client error, failure triggers retry"},{"code":"5XX","description":"Server error, failure triggers retry"}],"pointer":"/paths/loan.processing/post/responses"}],"panels":[]}]},"httpPath":"loan.processing"},{"label":"Loan active","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":true,"type":"link","link":"/en-us/apis/openapi/loans/onloanactive","routeSlug":"/en-us/apis/openapi/loans/onloanactive","metadata":{"seo":{"title":"Loan active","description":"Fires when the disbursement is confirmed and the loan enters the repayment phase.Includes the requested amount (requested_amount) and the principal amount received (principal_amount).Use it to confirm to the customer that the funds have been credited and present the installment schedule."}},"content":{"contentType":"item","itemVariant":"httpItem","meta":{"sourceId":"onLoanActive","name":"Loan active","isWebhook":true,"pointer":"/paths/loan.active/post","hasSamples":true},"children":[{"nodeType":"container","children":[{"nodeType":"header","level":2,"label":"Loan active","isWebhook":true,"showPageActions":true}],"panels":[]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Request","labelTranslationKey":"request","deepLinkSuffix":"request"},{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Fires when the disbursement is confirmed and the loan enters the repayment phase."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Includes the requested amount ("},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"requested_amount"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":") and the principal amount received ("},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"principal_amount"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":")."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Use it to confirm to the customer that the funds have been credited and present the installment schedule."},"children":[]}]}]}]},{"nodeType":"security","requirements":[{"schemes":[{"name":"webhookSignature","scopes":[],"type":"apiKey","in":"header","paramName":"webhook-signature","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"HMAC-SHA256 signature per the Standard Webhooks specification."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Verify using the "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"whsec_"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"-prefixed secret from endpoint creation."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The header contains base64-encoded signatures; the signed content"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"is "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"{webhook-id}.{webhook-timestamp}.{body}"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]}]}]}]},{"nodeType":"item-content","variant":"headers","label":"Headers","labelTranslationKey":"header","parameters":[{"name":"webhook-id","in":"header","schemaId":"schema_37","description":"Unique delivery ID. Use as idempotency key to deduplicate events","required":true},{"name":"webhook-timestamp","in":"header","schemaId":"schema_38","description":"Unix timestamp of the delivery attempt. Reject if older than 5 minutes (replay protection)","required":true},{"name":"webhook-signature","in":"header","schemaId":"schema_6","description":"HMAC-SHA256 signature(s) for verification per Standard Webhooks spec","required":true}],"pointer":"/paths/loan.active/post/parameters"},{"nodeType":"item-content","variant":"body","label":"Request Body","labelTranslationKey":"body","required":true,"isEvent":true,"mediaTypes":["application/json"],"mediaTypeSchemas":{"application/json":{"schemaId":"components/schemas/WebhookEvent_LoanActive","exampleIds":["paths/loan.active/post/requestBody/content/application~1json/example"]}},"schemaId":"components/schemas/WebhookEvent_LoanActive","exampleIds":["paths/loan.active/post/requestBody/content/application~1json/example"],"pointer":"/paths/loan.active/post/requestBody"}],"panels":[{"children":[{"kind":"code-sample","source":{"kind":"code-sample","operationType":"webhook","method":"POST","path":"loan.active","servers":[{"url":"/_mock/en-us/apis/openapi","description":"Mock server","isMockServer":true},{"url":"https://api.dinie.com/api/v3","description":"Production"},{"url":"https://api-dev.dinietech.io/api/v3","description":"Sandbox"}],"parameters":{"path":[],"query":[],"querystring":[],"header":[{"name":"webhook-id","in":"header","required":true,"example":"evt_550e8400e29b41d4a716446655440000","schemaId":"components/schemas/EventId"},{"name":"webhook-timestamp","in":"header","required":true,"schemaId":"schema_38"},{"name":"webhook-signature","in":"header","required":true,"schemaId":"schema_6"}],"cookie":[]},"security":[{"schemes":[{"id":"webhookSignature","type":"apiKey","name":"webhook-signature","in":"header"}],"scopes":[]}],"requestBody":{"application/json":{"schemaId":"components/schemas/WebhookEvent_LoanActive","exampleIds":["paths/loan.active/post/requestBody/content/application~1json/example"]}},"responseCodes":["200","410","429","502","504","4XX","5XX"],"pointer":"loan.active","href":"loans/onloanactive","openApiOperationId":"onLoanActive","summary":"Loan active"},"isWebhook":true,"hideReplay":false,"servers":[{"url":"/_mock/en-us/apis/openapi","description":"Mock server","isMockServer":true},{"url":"https://api.dinie.com/api/v3","description":"Production"},{"url":"https://api-dev.dinietech.io/api/v3","description":"Sandbox"}],"schemaId":"components/schemas/WebhookEvent_LoanActive","exampleIds":["paths/loan.active/post/requestBody/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeSchemas":{"application/json":{"schemaId":"components/schemas/WebhookEvent_LoanActive","exampleIds":["paths/loan.active/post/requestBody/content/application~1json/example"]}},"examples":[{}]}]}]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Responses","labelTranslationKey":"responses","deepLinkSuffix":"responses"},{"nodeType":"item-content","variant":"responses","responses":[{"code":"200","description":"Delivery confirmed"},{"code":"410","description":"Endpoint permanently disabled"},{"code":"429","description":"Rate-limiting, send rate reduced"},{"code":"502","description":"Server overload, rate reduced before retrying"},{"code":"504","description":"Gateway timeout, rate reduced before retrying"},{"code":"4XX","description":"Client error, failure triggers retry"},{"code":"5XX","description":"Server error, failure triggers retry"}],"pointer":"/paths/loan.active/post/responses"}],"panels":[]}]},"httpPath":"loan.active"},{"label":"Loan payment received","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":true,"type":"link","link":"/en-us/apis/openapi/loans/onloanpaymentreceived","routeSlug":"/en-us/apis/openapi/loans/onloanpaymentreceived","metadata":{"seo":{"title":"Loan payment received","description":"Fires when an installment payment is recorded for the loan. Includes the amount paid, payment date, and corresponding installment number. Use it to update the outstanding balance in your system and notify the customer about the payment confirmation."}},"content":{"contentType":"item","itemVariant":"httpItem","meta":{"sourceId":"onLoanPaymentReceived","name":"Loan payment received","isWebhook":true,"pointer":"/paths/loan.payment_received/post","hasSamples":true},"children":[{"nodeType":"container","children":[{"nodeType":"header","level":2,"label":"Loan payment received","isWebhook":true,"showPageActions":true}],"panels":[]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Request","labelTranslationKey":"request","deepLinkSuffix":"request"},{"nodeType":"markdoc","content":"Fires when an installment payment is recorded for the loan. Includes the amount\npaid, payment date, and corresponding installment number. Use it to update the\noutstanding balance in your system and notify the customer about the payment confirmation.\n"},{"nodeType":"security","requirements":[{"schemes":[{"name":"webhookSignature","scopes":[],"type":"apiKey","in":"header","paramName":"webhook-signature","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"HMAC-SHA256 signature per the Standard Webhooks specification."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Verify using the "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"whsec_"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"-prefixed secret from endpoint creation."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The header contains base64-encoded signatures; the signed content"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"is "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"{webhook-id}.{webhook-timestamp}.{body}"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]}]}]}]},{"nodeType":"item-content","variant":"headers","label":"Headers","labelTranslationKey":"header","parameters":[{"name":"webhook-id","in":"header","schemaId":"schema_37","description":"Unique delivery ID. Use as idempotency key to deduplicate events","required":true},{"name":"webhook-timestamp","in":"header","schemaId":"schema_38","description":"Unix timestamp of the delivery attempt. Reject if older than 5 minutes (replay protection)","required":true},{"name":"webhook-signature","in":"header","schemaId":"schema_6","description":"HMAC-SHA256 signature(s) for verification per Standard Webhooks spec","required":true}],"pointer":"/paths/loan.payment_received/post/parameters"},{"nodeType":"item-content","variant":"body","label":"Request Body","labelTranslationKey":"body","required":true,"isEvent":true,"mediaTypes":["application/json"],"mediaTypeSchemas":{"application/json":{"schemaId":"components/schemas/WebhookEvent_LoanPaymentReceived","exampleIds":["paths/loan.payment_received/post/requestBody/content/application~1json/example"]}},"schemaId":"components/schemas/WebhookEvent_LoanPaymentReceived","exampleIds":["paths/loan.payment_received/post/requestBody/content/application~1json/example"],"pointer":"/paths/loan.payment_received/post/requestBody"}],"panels":[{"children":[{"kind":"code-sample","source":{"kind":"code-sample","operationType":"webhook","method":"POST","path":"loan.payment_received","servers":[{"url":"/_mock/en-us/apis/openapi","description":"Mock server","isMockServer":true},{"url":"https://api.dinie.com/api/v3","description":"Production"},{"url":"https://api-dev.dinietech.io/api/v3","description":"Sandbox"}],"parameters":{"path":[],"query":[],"querystring":[],"header":[{"name":"webhook-id","in":"header","required":true,"example":"evt_550e8400e29b41d4a716446655440000","schemaId":"components/schemas/EventId"},{"name":"webhook-timestamp","in":"header","required":true,"schemaId":"schema_38"},{"name":"webhook-signature","in":"header","required":true,"schemaId":"schema_6"}],"cookie":[]},"security":[{"schemes":[{"id":"webhookSignature","type":"apiKey","name":"webhook-signature","in":"header"}],"scopes":[]}],"requestBody":{"application/json":{"schemaId":"components/schemas/WebhookEvent_LoanPaymentReceived","exampleIds":["paths/loan.payment_received/post/requestBody/content/application~1json/example"]}},"responseCodes":["200","410","429","502","504","4XX","5XX"],"pointer":"loan.payment_received","href":"loans/onloanpaymentreceived","openApiOperationId":"onLoanPaymentReceived","summary":"Loan payment received"},"isWebhook":true,"hideReplay":false,"servers":[{"url":"/_mock/en-us/apis/openapi","description":"Mock server","isMockServer":true},{"url":"https://api.dinie.com/api/v3","description":"Production"},{"url":"https://api-dev.dinietech.io/api/v3","description":"Sandbox"}],"schemaId":"components/schemas/WebhookEvent_LoanPaymentReceived","exampleIds":["paths/loan.payment_received/post/requestBody/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeSchemas":{"application/json":{"schemaId":"components/schemas/WebhookEvent_LoanPaymentReceived","exampleIds":["paths/loan.payment_received/post/requestBody/content/application~1json/example"]}},"examples":[{}]}]}]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Responses","labelTranslationKey":"responses","deepLinkSuffix":"responses"},{"nodeType":"item-content","variant":"responses","responses":[{"code":"200","description":"Delivery confirmed"},{"code":"410","description":"Endpoint permanently disabled"},{"code":"429","description":"Rate-limiting, send rate reduced"},{"code":"502","description":"Server overload, rate reduced before retrying"},{"code":"504","description":"Gateway timeout, rate reduced before retrying"},{"code":"4XX","description":"Client error, failure triggers retry"},{"code":"5XX","description":"Server error, failure triggers retry"}],"pointer":"/paths/loan.payment_received/post/responses"}],"panels":[]}]},"httpPath":"loan.payment_received"},{"label":"Loan finished","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":true,"type":"link","link":"/en-us/apis/openapi/loans/onloanfinished","routeSlug":"/en-us/apis/openapi/loans/onloanfinished","metadata":{"seo":{"title":"Loan finished","description":"Fires when all loan installments are paid off and the contract is closed.Includes the loan ID and finished status. Use it to mark the loan ascompleted in your system and check if new credit offers are available."}},"content":{"contentType":"item","itemVariant":"httpItem","meta":{"sourceId":"onLoanFinished","name":"Loan finished","isWebhook":true,"pointer":"/paths/loan.finished/post","hasSamples":true},"children":[{"nodeType":"container","children":[{"nodeType":"header","level":2,"label":"Loan finished","isWebhook":true,"showPageActions":true}],"panels":[]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Request","labelTranslationKey":"request","deepLinkSuffix":"request"},{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Fires when all loan installments are paid off and the contract is closed."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Includes the loan ID and "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"finished"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" status. Use it to mark the loan as"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"completed in your system and check if new credit offers are available."},"children":[]}]}]}]},{"nodeType":"security","requirements":[{"schemes":[{"name":"webhookSignature","scopes":[],"type":"apiKey","in":"header","paramName":"webhook-signature","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"HMAC-SHA256 signature per the Standard Webhooks specification."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Verify using the "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"whsec_"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"-prefixed secret from endpoint creation."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The header contains base64-encoded signatures; the signed content"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"is "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"{webhook-id}.{webhook-timestamp}.{body}"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]}]}]}]},{"nodeType":"item-content","variant":"headers","label":"Headers","labelTranslationKey":"header","parameters":[{"name":"webhook-id","in":"header","schemaId":"schema_37","description":"Unique delivery ID. Use as idempotency key to deduplicate events","required":true},{"name":"webhook-timestamp","in":"header","schemaId":"schema_38","description":"Unix timestamp of the delivery attempt. Reject if older than 5 minutes (replay protection)","required":true},{"name":"webhook-signature","in":"header","schemaId":"schema_6","description":"HMAC-SHA256 signature(s) for verification per Standard Webhooks spec","required":true}],"pointer":"/paths/loan.finished/post/parameters"},{"nodeType":"item-content","variant":"body","label":"Request Body","labelTranslationKey":"body","required":true,"isEvent":true,"mediaTypes":["application/json"],"mediaTypeSchemas":{"application/json":{"schemaId":"components/schemas/WebhookEvent_LoanStatus","exampleIds":["paths/loan.finished/post/requestBody/content/application~1json/example"]}},"schemaId":"components/schemas/WebhookEvent_LoanStatus","exampleIds":["paths/loan.finished/post/requestBody/content/application~1json/example"],"pointer":"/paths/loan.finished/post/requestBody"}],"panels":[{"children":[{"kind":"code-sample","source":{"kind":"code-sample","operationType":"webhook","method":"POST","path":"loan.finished","servers":[{"url":"/_mock/en-us/apis/openapi","description":"Mock server","isMockServer":true},{"url":"https://api.dinie.com/api/v3","description":"Production"},{"url":"https://api-dev.dinietech.io/api/v3","description":"Sandbox"}],"parameters":{"path":[],"query":[],"querystring":[],"header":[{"name":"webhook-id","in":"header","required":true,"example":"evt_550e8400e29b41d4a716446655440000","schemaId":"components/schemas/EventId"},{"name":"webhook-timestamp","in":"header","required":true,"schemaId":"schema_38"},{"name":"webhook-signature","in":"header","required":true,"schemaId":"schema_6"}],"cookie":[]},"security":[{"schemes":[{"id":"webhookSignature","type":"apiKey","name":"webhook-signature","in":"header"}],"scopes":[]}],"requestBody":{"application/json":{"schemaId":"components/schemas/WebhookEvent_LoanStatus","exampleIds":["paths/loan.finished/post/requestBody/content/application~1json/example"]}},"responseCodes":["200","410","429","502","504","4XX","5XX"],"pointer":"loan.finished","href":"loans/onloanfinished","openApiOperationId":"onLoanFinished","summary":"Loan finished"},"isWebhook":true,"hideReplay":false,"servers":[{"url":"/_mock/en-us/apis/openapi","description":"Mock server","isMockServer":true},{"url":"https://api.dinie.com/api/v3","description":"Production"},{"url":"https://api-dev.dinietech.io/api/v3","description":"Sandbox"}],"schemaId":"components/schemas/WebhookEvent_LoanStatus","exampleIds":["paths/loan.finished/post/requestBody/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeSchemas":{"application/json":{"schemaId":"components/schemas/WebhookEvent_LoanStatus","exampleIds":["paths/loan.finished/post/requestBody/content/application~1json/example"]}},"examples":[{}]}]}]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Responses","labelTranslationKey":"responses","deepLinkSuffix":"responses"},{"nodeType":"item-content","variant":"responses","responses":[{"code":"200","description":"Delivery confirmed"},{"code":"410","description":"Endpoint permanently disabled"},{"code":"429","description":"Rate-limiting, send rate reduced"},{"code":"502","description":"Server overload, rate reduced before retrying"},{"code":"504","description":"Gateway timeout, rate reduced before retrying"},{"code":"4XX","description":"Client error, failure triggers retry"},{"code":"5XX","description":"Server error, failure triggers retry"}],"pointer":"/paths/loan.finished/post/responses"}],"panels":[]}]},"httpPath":"loan.finished"},{"label":"Loan cancelled","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":true,"type":"link","link":"/en-us/apis/openapi/loans/onloancancelled","routeSlug":"/en-us/apis/openapi/loans/onloancancelled","metadata":{"seo":{"title":"Loan cancelled","description":"Fires when the loan is cancelled before disbursement is completed. Includes the loan IDand cancelled status. Use it to update the status in your system andinform the customer. The original credit offer may still be available for a new request."}},"content":{"contentType":"item","itemVariant":"httpItem","meta":{"sourceId":"onLoanCancelled","name":"Loan cancelled","isWebhook":true,"pointer":"/paths/loan.cancelled/post","hasSamples":true},"children":[{"nodeType":"container","children":[{"nodeType":"header","level":2,"label":"Loan cancelled","isWebhook":true,"showPageActions":true}],"panels":[]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Request","labelTranslationKey":"request","deepLinkSuffix":"request"},{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Fires when the loan is cancelled before disbursement is completed. Includes the loan ID"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"and "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"cancelled"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" status. Use it to update the status in your system and"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"inform the customer. The original credit offer may still be available for a new request."},"children":[]}]}]}]},{"nodeType":"security","requirements":[{"schemes":[{"name":"webhookSignature","scopes":[],"type":"apiKey","in":"header","paramName":"webhook-signature","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"HMAC-SHA256 signature per the Standard Webhooks specification."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Verify using the "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"whsec_"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"-prefixed secret from endpoint creation."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The header contains base64-encoded signatures; the signed content"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"is "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"{webhook-id}.{webhook-timestamp}.{body}"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]}]}]}]},{"nodeType":"item-content","variant":"headers","label":"Headers","labelTranslationKey":"header","parameters":[{"name":"webhook-id","in":"header","schemaId":"schema_37","description":"Unique delivery ID. Use as idempotency key to deduplicate events","required":true},{"name":"webhook-timestamp","in":"header","schemaId":"schema_38","description":"Unix timestamp of the delivery attempt. Reject if older than 5 minutes (replay protection)","required":true},{"name":"webhook-signature","in":"header","schemaId":"schema_6","description":"HMAC-SHA256 signature(s) for verification per Standard Webhooks spec","required":true}],"pointer":"/paths/loan.cancelled/post/parameters"},{"nodeType":"item-content","variant":"body","label":"Request Body","labelTranslationKey":"body","required":true,"isEvent":true,"mediaTypes":["application/json"],"mediaTypeSchemas":{"application/json":{"schemaId":"components/schemas/WebhookEvent_LoanStatus","exampleIds":["paths/loan.cancelled/post/requestBody/content/application~1json/example"]}},"schemaId":"components/schemas/WebhookEvent_LoanStatus","exampleIds":["paths/loan.cancelled/post/requestBody/content/application~1json/example"],"pointer":"/paths/loan.cancelled/post/requestBody"}],"panels":[{"children":[{"kind":"code-sample","source":{"kind":"code-sample","operationType":"webhook","method":"POST","path":"loan.cancelled","servers":[{"url":"/_mock/en-us/apis/openapi","description":"Mock server","isMockServer":true},{"url":"https://api.dinie.com/api/v3","description":"Production"},{"url":"https://api-dev.dinietech.io/api/v3","description":"Sandbox"}],"parameters":{"path":[],"query":[],"querystring":[],"header":[{"name":"webhook-id","in":"header","required":true,"example":"evt_550e8400e29b41d4a716446655440000","schemaId":"components/schemas/EventId"},{"name":"webhook-timestamp","in":"header","required":true,"schemaId":"schema_38"},{"name":"webhook-signature","in":"header","required":true,"schemaId":"schema_6"}],"cookie":[]},"security":[{"schemes":[{"id":"webhookSignature","type":"apiKey","name":"webhook-signature","in":"header"}],"scopes":[]}],"requestBody":{"application/json":{"schemaId":"components/schemas/WebhookEvent_LoanStatus","exampleIds":["paths/loan.cancelled/post/requestBody/content/application~1json/example"]}},"responseCodes":["200","410","429","502","504","4XX","5XX"],"pointer":"loan.cancelled","href":"loans/onloancancelled","openApiOperationId":"onLoanCancelled","summary":"Loan cancelled"},"isWebhook":true,"hideReplay":false,"servers":[{"url":"/_mock/en-us/apis/openapi","description":"Mock server","isMockServer":true},{"url":"https://api.dinie.com/api/v3","description":"Production"},{"url":"https://api-dev.dinietech.io/api/v3","description":"Sandbox"}],"schemaId":"components/schemas/WebhookEvent_LoanStatus","exampleIds":["paths/loan.cancelled/post/requestBody/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeSchemas":{"application/json":{"schemaId":"components/schemas/WebhookEvent_LoanStatus","exampleIds":["paths/loan.cancelled/post/requestBody/content/application~1json/example"]}},"examples":[{}]}]}]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Responses","labelTranslationKey":"responses","deepLinkSuffix":"responses"},{"nodeType":"item-content","variant":"responses","responses":[{"code":"200","description":"Delivery confirmed"},{"code":"410","description":"Endpoint permanently disabled"},{"code":"429","description":"Rate-limiting, send rate reduced"},{"code":"502","description":"Server overload, rate reduced before retrying"},{"code":"504","description":"Gateway timeout, rate reduced before retrying"},{"code":"4XX","description":"Client error, failure triggers retry"},{"code":"5XX","description":"Server error, failure triggers retry"}],"pointer":"/paths/loan.cancelled/post/responses"}],"panels":[]}]},"httpPath":"loan.cancelled"},{"label":"Loan error","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":true,"type":"link","link":"/en-us/apis/openapi/loans/onloanerror","routeSlug":"/en-us/apis/openapi/loans/onloanerror","metadata":{"seo":{"title":"Loan error","description":"Fires when an unrecoverable error occurs in the loan, such as a disbursement failureor contract generation error. Includes the error code and message in the error field.Use it to alert your team, log the issue, and inform the customer about the situation."}},"content":{"contentType":"item","itemVariant":"httpItem","meta":{"sourceId":"onLoanError","name":"Loan error","isWebhook":true,"pointer":"/paths/loan.error/post","hasSamples":true},"children":[{"nodeType":"container","children":[{"nodeType":"header","level":2,"label":"Loan error","isWebhook":true,"showPageActions":true}],"panels":[]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Request","labelTranslationKey":"request","deepLinkSuffix":"request"},{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Fires when an unrecoverable error occurs in the loan, such as a disbursement failure"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"or contract generation error. Includes the error code and message in the "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"error"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" field."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Use it to alert your team, log the issue, and inform the customer about the situation."},"children":[]}]}]}]},{"nodeType":"security","requirements":[{"schemes":[{"name":"webhookSignature","scopes":[],"type":"apiKey","in":"header","paramName":"webhook-signature","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"HMAC-SHA256 signature per the Standard Webhooks specification."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Verify using the "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"whsec_"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"-prefixed secret from endpoint creation."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The header contains base64-encoded signatures; the signed content"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"is "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"{webhook-id}.{webhook-timestamp}.{body}"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]}]}]}]},{"nodeType":"item-content","variant":"headers","label":"Headers","labelTranslationKey":"header","parameters":[{"name":"webhook-id","in":"header","schemaId":"schema_37","description":"Unique delivery ID. Use as idempotency key to deduplicate events","required":true},{"name":"webhook-timestamp","in":"header","schemaId":"schema_38","description":"Unix timestamp of the delivery attempt. Reject if older than 5 minutes (replay protection)","required":true},{"name":"webhook-signature","in":"header","schemaId":"schema_6","description":"HMAC-SHA256 signature(s) for verification per Standard Webhooks spec","required":true}],"pointer":"/paths/loan.error/post/parameters"},{"nodeType":"item-content","variant":"body","label":"Request Body","labelTranslationKey":"body","required":true,"isEvent":true,"mediaTypes":["application/json"],"mediaTypeSchemas":{"application/json":{"schemaId":"components/schemas/WebhookEvent_LoanStatus","exampleIds":["paths/loan.error/post/requestBody/content/application~1json/example"]}},"schemaId":"components/schemas/WebhookEvent_LoanStatus","exampleIds":["paths/loan.error/post/requestBody/content/application~1json/example"],"pointer":"/paths/loan.error/post/requestBody"}],"panels":[{"children":[{"kind":"code-sample","source":{"kind":"code-sample","operationType":"webhook","method":"POST","path":"loan.error","servers":[{"url":"/_mock/en-us/apis/openapi","description":"Mock server","isMockServer":true},{"url":"https://api.dinie.com/api/v3","description":"Production"},{"url":"https://api-dev.dinietech.io/api/v3","description":"Sandbox"}],"parameters":{"path":[],"query":[],"querystring":[],"header":[{"name":"webhook-id","in":"header","required":true,"example":"evt_550e8400e29b41d4a716446655440000","schemaId":"components/schemas/EventId"},{"name":"webhook-timestamp","in":"header","required":true,"schemaId":"schema_38"},{"name":"webhook-signature","in":"header","required":true,"schemaId":"schema_6"}],"cookie":[]},"security":[{"schemes":[{"id":"webhookSignature","type":"apiKey","name":"webhook-signature","in":"header"}],"scopes":[]}],"requestBody":{"application/json":{"schemaId":"components/schemas/WebhookEvent_LoanStatus","exampleIds":["paths/loan.error/post/requestBody/content/application~1json/example"]}},"responseCodes":["200","410","429","502","504","4XX","5XX"],"pointer":"loan.error","href":"loans/onloanerror","openApiOperationId":"onLoanError","summary":"Loan error"},"isWebhook":true,"hideReplay":false,"servers":[{"url":"/_mock/en-us/apis/openapi","description":"Mock server","isMockServer":true},{"url":"https://api.dinie.com/api/v3","description":"Production"},{"url":"https://api-dev.dinietech.io/api/v3","description":"Sandbox"}],"schemaId":"components/schemas/WebhookEvent_LoanStatus","exampleIds":["paths/loan.error/post/requestBody/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeSchemas":{"application/json":{"schemaId":"components/schemas/WebhookEvent_LoanStatus","exampleIds":["paths/loan.error/post/requestBody/content/application~1json/example"]}},"examples":[{}]}]}]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Responses","labelTranslationKey":"responses","deepLinkSuffix":"responses"},{"nodeType":"item-content","variant":"responses","responses":[{"code":"200","description":"Delivery confirmed"},{"code":"410","description":"Endpoint permanently disabled"},{"code":"429","description":"Rate-limiting, send rate reduced"},{"code":"502","description":"Server overload, rate reduced before retrying"},{"code":"504","description":"Gateway timeout, rate reduced before retrying"},{"code":"4XX","description":"Client error, failure triggers retry"},{"code":"5XX","description":"Server error, failure triggers retry"}],"pointer":"/paths/loan.error/post/responses"}],"panels":[]}]},"httpPath":"loan.error"}],"content":{"contentType":"group","meta":{"name":"Loans"},"children":[{"nodeType":"container","children":[{"nodeType":"header","level":2,"label":"Loans","showPageActions":true},{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Create loans from credit offers, track contract signing, disbursement, and installment payments."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"See the "},"children":[]},{"$$mdtype":"Node","type":"link","inline":true,"attributes":{"href":"/guides/credit-workflow"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Simulation & Contracting"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" guide for the complete flow."},"children":[]}]}]}]}],"panels":[{"children":[{"kind":"group-items","title":"Operations","titleTranslationKey":"operations","items":[{"title":"/credit-offers/{credit_offer_id}/simulations","summary":"Simulate a loan","prefix":{"name":"post","color":"post"},"badges":[],"link":"/loans/createsimulation","deprecated":false},{"title":"/loans","summary":"Create a loan","prefix":{"name":"post","color":"post"},"badges":[],"link":"/loans/createloan","deprecated":false},{"title":"/loans/{loan_id}","summary":"Get a loan","prefix":{"name":"get","color":"get"},"badges":[],"link":"/loans/getloan","deprecated":false},{"title":"/loans/{loan_id}/transactions","summary":"List transactions","prefix":{"name":"get","color":"get"},"badges":[],"link":"/loans/listtransactions","deprecated":false}]},{"kind":"group-items","title":"Webhooks","titleTranslationKey":"webhooks","items":[{"title":"loan.created","summary":"Loan created","prefix":{"name":"post","color":"post"},"badges":[],"link":"/loans/onloancreated","deprecated":false},{"title":"loan.signature_received","summary":"Signature received","prefix":{"name":"post","color":"post"},"badges":[],"link":"/loans/onloansignaturereceived","deprecated":false},{"title":"loan.processing","summary":"Loan processing","prefix":{"name":"post","color":"post"},"badges":[],"link":"/loans/onloanprocessing","deprecated":false},{"title":"loan.active","summary":"Loan active","prefix":{"name":"post","color":"post"},"badges":[],"link":"/loans/onloanactive","deprecated":false},{"title":"loan.payment_received","summary":"Loan payment received","prefix":{"name":"post","color":"post"},"badges":[],"link":"/loans/onloanpaymentreceived","deprecated":false},{"title":"loan.finished","summary":"Loan finished","prefix":{"name":"post","color":"post"},"badges":[],"link":"/loans/onloanfinished","deprecated":false},{"title":"loan.cancelled","summary":"Loan cancelled","prefix":{"name":"post","color":"post"},"badges":[],"link":"/loans/onloancancelled","deprecated":false},{"title":"loan.error","summary":"Loan error","prefix":{"name":"post","color":"post"},"badges":[],"link":"/loans/onloanerror","deprecated":false}]}]}]}]}},{"type":"group","label":"Webhooks","link":"/en-us/apis/openapi/webhooks","routeSlug":"/en-us/apis/openapi/webhooks","items":[{"label":"Create a webhook","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/en-us/apis/openapi/webhooks/createwebhookendpoint","routeSlug":"/en-us/apis/openapi/webhooks/createwebhookendpoint","metadata":{"seo":{"title":"Create a webhook","description":"POST /webhooks/endpoints"}},"content":{"contentType":"item","itemVariant":"httpItem","meta":{"sourceId":"createWebhookEndpoint","name":"Create a webhook","isWebhook":false,"pointer":"/paths/~1webhooks~1endpoints/post","hasSamples":true},"children":[{"nodeType":"container","children":[{"nodeType":"header","level":2,"label":"Create a webhook","isWebhook":false,"showPageActions":true}],"panels":[]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Request","labelTranslationKey":"request","deepLinkSuffix":"request"},{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"tag","tag":"html","attributes":{"name":"div","attrs":{"className":"endpoint-url"}},"children":[{"$$mdtype":"Node","type":"tag","tag":"html","attributes":{"name":"span","attrs":{"className":"mb mb--post"}},"children":[{"$$mdtype":"Node","type":"text","attributes":{"content":"POST"},"children":[]}]},{"$$mdtype":"Node","type":"text","attributes":{"content":" /webhooks/endpoints"},"children":[]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Register a webhook endpoint"},"children":[]}]}]}]},{"nodeType":"security","requirements":[{"schemes":[{"name":"bearerAuth","scopes":[],"type":"http","scheme":"bearer","bearerFormat":"JWT","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"JWT token obtained via OAuth2 Client Credentials. Send "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"POST /auth/token"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"with your credentials ("},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"client_id"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" and "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"client_secret"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":") in the"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Authorization: Basic base64(client_id:client_secret)"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" header to receive an"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"access token. Include the token in all requests:"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Authorization: Bearer <token>"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":". The token expires in 1 hour (3600s)."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Prefixes: "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"dinie_cs_live_"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" (production), "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"dinie_cs_test_"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" (sandbox)."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The returned token is prefixed with "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"dinie_at_"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]}]}]}]},{"nodeType":"item-content","variant":"headers","label":"Headers","labelTranslationKey":"header","parameters":[{"name":"X-Idempotency-Key","in":"header","schemaId":"schema_6","description":"Unique string for idempotent POST requests. Cached for 24 hours."}],"pointer":"/paths/~1webhooks~1endpoints/post/parameters"},{"nodeType":"item-content","variant":"body","label":"Request Body","labelTranslationKey":"body","required":true,"mediaTypes":["application/json"],"mediaTypeSchemas":{"application/json":{"schemaId":"components/schemas/CreateWebhookEndpointRequest","exampleIds":["paths/~1webhooks~1endpoints/post/requestBody/content/application~1json/example"]}},"schemaId":"components/schemas/CreateWebhookEndpointRequest","exampleIds":["paths/~1webhooks~1endpoints/post/requestBody/content/application~1json/example"],"pointer":"/paths/~1webhooks~1endpoints/post/requestBody"}],"panels":[{"children":[{"kind":"code-sample","source":{"kind":"code-sample","operationType":"http","method":"POST","path":"/webhooks/endpoints","servers":[{"url":"/_mock/en-us/apis/openapi","description":"Mock server","isMockServer":true},{"url":"https://api.dinie.com/api/v3","description":"Production"},{"url":"https://api-dev.dinietech.io/api/v3","description":"Sandbox"}],"parameters":{"path":[],"query":[],"querystring":[],"header":[{"name":"X-Idempotency-Key","in":"header","required":false,"schemaId":"schema_6"}],"cookie":[]},"security":[{"schemes":[{"id":"bearerAuth","type":"http","scheme":"bearer","bearerFormat":"JWT"}],"scopes":[]}],"requestBody":{"application/json":{"schemaId":"components/schemas/CreateWebhookEndpointRequest","exampleIds":["paths/~1webhooks~1endpoints/post/requestBody/content/application~1json/example"]}},"responseCodes":["201","400","401","422","429","500"],"pointer":"/webhooks/endpoints","href":"webhooks/createwebhookendpoint","openApiOperationId":"createWebhookEndpoint","summary":"Create a webhook"},"definitionSamples":[{"lang":"curl","source":"curl -X POST https://api.dinie.com/api/v3/webhooks/endpoints \\\n  -H \"Authorization: Bearer $DINIE_API_TOKEN\" \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\n    \"url\": \"https://parceiro.example.com/webhooks/dinie\",\n    \"events\": [\"customer.active\", \"credit_offer.available\", \"loan.*\"],\n    \"description\": \"Webhook de produção\"\n  }'\n"},{"lang":"Python","source":"from dinie import Dinie\n\nclient = Dinie(\n    client_id=\"dinie_ci_abc123\",\n    client_secret=\"dinie_cs_live_xyz789\"\n)\n\n# Create a webhook endpoint\nendpoint = client.webhooks.create_endpoint(\n    url=\"https://parceiro.example.com/webhooks/dinie\",\n    events=[\"customer.active\", \"credit_offer.available\", \"loan.*\"],\n    description=\"Webhook de produção\"\n)\n\nprint(endpoint.id)      # \"we_550e8400...\"\nprint(endpoint.secret)  # \"whsec_a1b2c3...\"\n# Store the secret securely -- shown only once!\n"},{"lang":"Node.js","source":"const { Dinie } = require(\"dinie\");\n\nconst client = new Dinie({\n  clientId: \"dinie_ci_abc123\",\n  clientSecret: \"dinie_cs_live_xyz789\",\n});\n\n// Create a webhook endpoint\nconst endpoint = await client.webhooks.createEndpoint({\n  url: \"https://parceiro.example.com/webhooks/dinie\",\n  events: [\"customer.active\", \"credit_offer.available\", \"loan.*\"],\n  description: \"Webhook de produção\",\n});\n\nconsole.log(endpoint.id);      // \"we_550e8400...\"\nconsole.log(endpoint.secret);   // \"whsec_a1b2c3...\"\n// Store the secret securely -- shown only once!\n"},{"lang":"Ruby","source":"require \"dinie\"\n\nclient = Dinie::Client.new(\n  client_id: \"dinie_ci_abc123\",\n  client_secret: \"dinie_cs_live_xyz789\"\n)\n\n# Create a webhook endpoint\nendpoint = client.webhooks.create_endpoint(\n  url: \"https://parceiro.example.com/webhooks/dinie\",\n  events: [\"customer.active\", \"credit_offer.available\", \"loan.*\"],\n  description: \"Webhook de produção\"\n)\n\nputs endpoint.id      # \"we_550e8400...\"\nputs endpoint.secret  # \"whsec_a1b2c3...\"\n# Store the secret securely -- shown only once!\n"}],"isWebhook":false,"hideReplay":false,"servers":[{"url":"/_mock/en-us/apis/openapi","description":"Mock server","isMockServer":true},{"url":"https://api.dinie.com/api/v3","description":"Production"},{"url":"https://api-dev.dinietech.io/api/v3","description":"Sandbox"}],"schemaId":"components/schemas/CreateWebhookEndpointRequest","exampleIds":["paths/~1webhooks~1endpoints/post/requestBody/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeSchemas":{"application/json":{"schemaId":"components/schemas/CreateWebhookEndpointRequest","exampleIds":["paths/~1webhooks~1endpoints/post/requestBody/content/application~1json/example"]}},"examples":[{}]}]}]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Responses","labelTranslationKey":"responses","deepLinkSuffix":"responses"},{"nodeType":"item-content","variant":"responses","responses":[{"code":"201","description":"Webhook endpoint created","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/WebhookEndpointWithSecret","exampleIds":["paths/~1webhooks~1endpoints/post/responses/201/content/application~1json/example"]}},"schemaId":"components/schemas/WebhookEndpointWithSecret","exampleIds":["paths/~1webhooks~1endpoints/post/responses/201/content/application~1json/example"]},{"code":"400","description":"Bad request","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_7","exampleIds":["paths/~1webhooks~1endpoints/post/responses/400/content/application~1problem+json/examples/invalid_content_type","paths/~1webhooks~1endpoints/post/responses/400/content/application~1problem+json/examples/malformed_body"]}},"schemaId":"schema_7","exampleIds":["paths/~1webhooks~1endpoints/post/responses/400/content/application~1problem+json/examples/invalid_content_type","paths/~1webhooks~1endpoints/post/responses/400/content/application~1problem+json/examples/malformed_body"]},{"code":"401","description":"Authentication failed","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_8","exampleIds":["paths/~1webhooks~1endpoints/post/responses/401/content/application~1problem+json/examples/missing_token","paths/~1webhooks~1endpoints/post/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1webhooks~1endpoints/post/responses/401/content/application~1problem+json/examples/token_expired"]}},"schemaId":"schema_8","exampleIds":["paths/~1webhooks~1endpoints/post/responses/401/content/application~1problem+json/examples/missing_token","paths/~1webhooks~1endpoints/post/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1webhooks~1endpoints/post/responses/401/content/application~1problem+json/examples/token_expired"]},{"code":"422","description":"Validation failed","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_53","exampleIds":["paths/~1webhooks~1endpoints/post/responses/422/content/application~1problem+json/examples/missing_required_field","paths/~1webhooks~1endpoints/post/responses/422/content/application~1problem+json/examples/invalid_url","paths/~1webhooks~1endpoints/post/responses/422/content/application~1problem+json/examples/invalid_events"]}},"schemaId":"schema_53","exampleIds":["paths/~1webhooks~1endpoints/post/responses/422/content/application~1problem+json/examples/missing_required_field","paths/~1webhooks~1endpoints/post/responses/422/content/application~1problem+json/examples/invalid_url","paths/~1webhooks~1endpoints/post/responses/422/content/application~1problem+json/examples/invalid_events"]},{"code":"429","description":"Rate limit exceeded","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_3","exampleIds":["paths/~1webhooks~1endpoints/post/responses/429/content/application~1problem+json/example"]}},"schemaId":"schema_3","exampleIds":["paths/~1webhooks~1endpoints/post/responses/429/content/application~1problem+json/example"],"headers":{"Retry-After":{"schema":{"type":"integer"},"description":"Seconds until the rate limit resets"}},"headerSchemaId":"schema_4"},{"code":"500","description":"Internal server error","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_5","exampleIds":["paths/~1webhooks~1endpoints/post/responses/500/content/application~1problem+json/example"]}},"schemaId":"schema_5","exampleIds":["paths/~1webhooks~1endpoints/post/responses/500/content/application~1problem+json/example"]}],"pointer":"/paths/~1webhooks~1endpoints/post/responses"}],"panels":[{"children":[{"kind":"response","responseCodes":[{"code":"201","schemaId":"components/schemas/WebhookEndpointWithSecret","exampleIds":["paths/~1webhooks~1endpoints/post/responses/201/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/WebhookEndpointWithSecret","exampleIds":["paths/~1webhooks~1endpoints/post/responses/201/content/application~1json/example"]}}},{"code":"400","schemaId":"schema_7","exampleIds":["paths/~1webhooks~1endpoints/post/responses/400/content/application~1problem+json/examples/invalid_content_type","paths/~1webhooks~1endpoints/post/responses/400/content/application~1problem+json/examples/malformed_body"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_7","exampleIds":["paths/~1webhooks~1endpoints/post/responses/400/content/application~1problem+json/examples/invalid_content_type","paths/~1webhooks~1endpoints/post/responses/400/content/application~1problem+json/examples/malformed_body"]}}},{"code":"401","schemaId":"schema_8","exampleIds":["paths/~1webhooks~1endpoints/post/responses/401/content/application~1problem+json/examples/missing_token","paths/~1webhooks~1endpoints/post/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1webhooks~1endpoints/post/responses/401/content/application~1problem+json/examples/token_expired"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_8","exampleIds":["paths/~1webhooks~1endpoints/post/responses/401/content/application~1problem+json/examples/missing_token","paths/~1webhooks~1endpoints/post/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1webhooks~1endpoints/post/responses/401/content/application~1problem+json/examples/token_expired"]}}},{"code":"422","schemaId":"schema_53","exampleIds":["paths/~1webhooks~1endpoints/post/responses/422/content/application~1problem+json/examples/missing_required_field","paths/~1webhooks~1endpoints/post/responses/422/content/application~1problem+json/examples/invalid_url","paths/~1webhooks~1endpoints/post/responses/422/content/application~1problem+json/examples/invalid_events"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_53","exampleIds":["paths/~1webhooks~1endpoints/post/responses/422/content/application~1problem+json/examples/missing_required_field","paths/~1webhooks~1endpoints/post/responses/422/content/application~1problem+json/examples/invalid_url","paths/~1webhooks~1endpoints/post/responses/422/content/application~1problem+json/examples/invalid_events"]}}},{"code":"429","schemaId":"schema_3","exampleIds":["paths/~1webhooks~1endpoints/post/responses/429/content/application~1problem+json/example"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_3","exampleIds":["paths/~1webhooks~1endpoints/post/responses/429/content/application~1problem+json/example"]}}},{"code":"500","schemaId":"schema_5","exampleIds":["paths/~1webhooks~1endpoints/post/responses/500/content/application~1problem+json/example"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_5","exampleIds":["paths/~1webhooks~1endpoints/post/responses/500/content/application~1problem+json/example"]}}}],"examples":[]}]}]}]},"httpPath":"/webhooks/endpoints"},{"label":"List webhooks","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/en-us/apis/openapi/webhooks/listwebhookendpoints","routeSlug":"/en-us/apis/openapi/webhooks/listwebhookendpoints","metadata":{"seo":{"title":"List webhooks","description":"GET /webhooks/endpoints"}},"content":{"contentType":"item","itemVariant":"httpItem","meta":{"sourceId":"listWebhookEndpoints","name":"List webhooks","isWebhook":false,"pointer":"/paths/~1webhooks~1endpoints/get","hasSamples":true},"children":[{"nodeType":"container","children":[{"nodeType":"header","level":2,"label":"List webhooks","isWebhook":false,"showPageActions":true}],"panels":[]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Request","labelTranslationKey":"request","deepLinkSuffix":"request"},{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"tag","tag":"html","attributes":{"name":"div","attrs":{"className":"endpoint-url"}},"children":[{"$$mdtype":"Node","type":"tag","tag":"html","attributes":{"name":"span","attrs":{"className":"mb mb--get"}},"children":[{"$$mdtype":"Node","type":"text","attributes":{"content":"GET"},"children":[]}]},{"$$mdtype":"Node","type":"text","attributes":{"content":" /webhooks/endpoints"},"children":[]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"List webhook endpoints"},"children":[]}]}]}]},{"nodeType":"security","requirements":[{"schemes":[{"name":"bearerAuth","scopes":[],"type":"http","scheme":"bearer","bearerFormat":"JWT","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"JWT token obtained via OAuth2 Client Credentials. Send "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"POST /auth/token"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"with your credentials ("},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"client_id"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" and "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"client_secret"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":") in the"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Authorization: Basic base64(client_id:client_secret)"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" header to receive an"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"access token. Include the token in all requests:"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Authorization: Bearer <token>"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":". The token expires in 1 hour (3600s)."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Prefixes: "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"dinie_cs_live_"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" (production), "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"dinie_cs_test_"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" (sandbox)."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The returned token is prefixed with "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"dinie_at_"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]}]}]}]},{"nodeType":"item-content","variant":"query","label":"Query","labelTranslationKey":"query","parameters":[{"name":"starting_after","in":"query","schemaId":"schema_6","description":"Prefixed ID of the last item from the previous page."},{"name":"limit","in":"query","schemaId":"schema_19","description":"Number of items to return. Min: 1, Max: 100."}],"pointer":"/paths/~1webhooks~1endpoints/get/parameters"}],"panels":[{"children":[{"kind":"code-sample","source":{"kind":"code-sample","operationType":"http","method":"GET","path":"/webhooks/endpoints","servers":[{"url":"/_mock/en-us/apis/openapi","description":"Mock server","isMockServer":true},{"url":"https://api.dinie.com/api/v3","description":"Production"},{"url":"https://api-dev.dinietech.io/api/v3","description":"Sandbox"}],"parameters":{"path":[],"query":[{"name":"starting_after","in":"query","schemaId":"schema_6"},{"name":"limit","in":"query","schemaId":"schema_19"}],"querystring":[],"header":[],"cookie":[]},"security":[{"schemes":[{"id":"bearerAuth","type":"http","scheme":"bearer","bearerFormat":"JWT"}],"scopes":[]}],"responseCodes":["200","401","429","500"],"pointer":"/webhooks/endpoints","href":"webhooks/listwebhookendpoints","openApiOperationId":"listWebhookEndpoints","summary":"List webhooks"},"definitionSamples":[{"lang":"curl","source":"curl https://api.dinie.com/api/v3/webhooks/endpoints \\\n  -H \"Authorization: Bearer $DINIE_API_TOKEN\"\n"},{"lang":"Python","source":"from dinie import Dinie\n\nclient = Dinie(\n    client_id=\"dinie_ci_abc123\",\n    client_secret=\"dinie_cs_live_xyz789\"\n)\n\n# List all webhook endpoints\nendpoints = client.webhooks.list_endpoints()\n\nfor ep in endpoints.data:\n    print(f\"{ep.id}: {ep.url} ({ep.status})\")\n    # \"we_550e8400...: https://parceiro.example.com/webhooks/dinie (active)\"\n"},{"lang":"Node.js","source":"const { Dinie } = require(\"dinie\");\n\nconst client = new Dinie({\n  clientId: \"dinie_ci_abc123\",\n  clientSecret: \"dinie_cs_live_xyz789\",\n});\n\n// List all webhook endpoints\nconst endpoints = await client.webhooks.listEndpoints();\n\nfor (const ep of endpoints.data) {\n  console.log(`${ep.id}: ${ep.url} (${ep.status})`);\n  // \"we_550e8400...: https://parceiro.example.com/webhooks/dinie (active)\"\n}\n"},{"lang":"Ruby","source":"require \"dinie\"\n\nclient = Dinie::Client.new(\n  client_id: \"dinie_ci_abc123\",\n  client_secret: \"dinie_cs_live_xyz789\"\n)\n\n# List all webhook endpoints\nendpoints = client.webhooks.list_endpoints\n\nendpoints.data.each do |ep|\n  puts \"#{ep.id}: #{ep.url} (#{ep.status})\"\n  # \"we_550e8400...: https://parceiro.example.com/webhooks/dinie (active)\"\nend\n"}],"isWebhook":false,"hideReplay":false,"servers":[{"url":"/_mock/en-us/apis/openapi","description":"Mock server","isMockServer":true},{"url":"https://api.dinie.com/api/v3","description":"Production"},{"url":"https://api-dev.dinietech.io/api/v3","description":"Sandbox"}],"examples":[]}]}]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Responses","labelTranslationKey":"responses","deepLinkSuffix":"responses"},{"nodeType":"item-content","variant":"responses","responses":[{"code":"200","description":"List of webhook endpoints","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_54","exampleIds":["paths/~1webhooks~1endpoints/get/responses/200/content/application~1json/example"]}},"schemaId":"schema_54","exampleIds":["paths/~1webhooks~1endpoints/get/responses/200/content/application~1json/example"]},{"code":"401","description":"Authentication failed","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_8","exampleIds":["paths/~1webhooks~1endpoints/get/responses/401/content/application~1problem+json/examples/missing_token","paths/~1webhooks~1endpoints/get/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1webhooks~1endpoints/get/responses/401/content/application~1problem+json/examples/token_expired"]}},"schemaId":"schema_8","exampleIds":["paths/~1webhooks~1endpoints/get/responses/401/content/application~1problem+json/examples/missing_token","paths/~1webhooks~1endpoints/get/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1webhooks~1endpoints/get/responses/401/content/application~1problem+json/examples/token_expired"]},{"code":"429","description":"Rate limit exceeded","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_3","exampleIds":["paths/~1webhooks~1endpoints/get/responses/429/content/application~1problem+json/example"]}},"schemaId":"schema_3","exampleIds":["paths/~1webhooks~1endpoints/get/responses/429/content/application~1problem+json/example"],"headers":{"Retry-After":{"schema":{"type":"integer"},"description":"Seconds until the rate limit resets"}},"headerSchemaId":"schema_4"},{"code":"500","description":"Internal server error","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_5","exampleIds":["paths/~1webhooks~1endpoints/get/responses/500/content/application~1problem+json/example"]}},"schemaId":"schema_5","exampleIds":["paths/~1webhooks~1endpoints/get/responses/500/content/application~1problem+json/example"]}],"pointer":"/paths/~1webhooks~1endpoints/get/responses"}],"panels":[{"children":[{"kind":"response","responseCodes":[{"code":"200","schemaId":"schema_54","exampleIds":["paths/~1webhooks~1endpoints/get/responses/200/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_54","exampleIds":["paths/~1webhooks~1endpoints/get/responses/200/content/application~1json/example"]}}},{"code":"401","schemaId":"schema_8","exampleIds":["paths/~1webhooks~1endpoints/get/responses/401/content/application~1problem+json/examples/missing_token","paths/~1webhooks~1endpoints/get/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1webhooks~1endpoints/get/responses/401/content/application~1problem+json/examples/token_expired"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_8","exampleIds":["paths/~1webhooks~1endpoints/get/responses/401/content/application~1problem+json/examples/missing_token","paths/~1webhooks~1endpoints/get/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1webhooks~1endpoints/get/responses/401/content/application~1problem+json/examples/token_expired"]}}},{"code":"429","schemaId":"schema_3","exampleIds":["paths/~1webhooks~1endpoints/get/responses/429/content/application~1problem+json/example"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_3","exampleIds":["paths/~1webhooks~1endpoints/get/responses/429/content/application~1problem+json/example"]}}},{"code":"500","schemaId":"schema_5","exampleIds":["paths/~1webhooks~1endpoints/get/responses/500/content/application~1problem+json/example"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_5","exampleIds":["paths/~1webhooks~1endpoints/get/responses/500/content/application~1problem+json/example"]}}}],"examples":[]}]}]}]},"httpPath":"/webhooks/endpoints"},{"label":"Get a webhook","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/en-us/apis/openapi/webhooks/getwebhookendpoint","routeSlug":"/en-us/apis/openapi/webhooks/getwebhookendpoint","metadata":{"seo":{"title":"Get a webhook","description":"GET /webhooks/endpoints/{webhook_endpoint_id}"}},"content":{"contentType":"item","itemVariant":"httpItem","meta":{"sourceId":"getWebhookEndpoint","name":"Get a webhook","isWebhook":false,"pointer":"/paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/get","hasSamples":true},"children":[{"nodeType":"container","children":[{"nodeType":"header","level":2,"label":"Get a webhook","isWebhook":false,"showPageActions":true}],"panels":[]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Request","labelTranslationKey":"request","deepLinkSuffix":"request"},{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"tag","tag":"html","attributes":{"name":"div","attrs":{"className":"endpoint-url"}},"children":[{"$$mdtype":"Node","type":"tag","tag":"html","attributes":{"name":"span","attrs":{"className":"mb mb--get"}},"children":[{"$$mdtype":"Node","type":"text","attributes":{"content":"GET"},"children":[]}]},{"$$mdtype":"Node","type":"text","attributes":{"content":" /webhooks/endpoints/{webhook_endpoint_id}"},"children":[]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Get a webhook endpoint"},"children":[]}]}]}]},{"nodeType":"security","requirements":[{"schemes":[{"name":"bearerAuth","scopes":[],"type":"http","scheme":"bearer","bearerFormat":"JWT","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"JWT token obtained via OAuth2 Client Credentials. Send "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"POST /auth/token"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"with your credentials ("},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"client_id"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" and "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"client_secret"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":") in the"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Authorization: Basic base64(client_id:client_secret)"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" header to receive an"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"access token. Include the token in all requests:"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Authorization: Bearer <token>"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":". The token expires in 1 hour (3600s)."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Prefixes: "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"dinie_cs_live_"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" (production), "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"dinie_cs_test_"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" (sandbox)."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The returned token is prefixed with "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"dinie_at_"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]}]}]}]},{"nodeType":"item-content","variant":"path","label":"Path","labelTranslationKey":"path","parameters":[{"name":"webhook_endpoint_id","in":"path","schemaId":"schema_55","description":"Webhook endpoint ID","required":true}],"pointer":"/paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/get/parameters"}],"panels":[{"children":[{"kind":"code-sample","source":{"kind":"code-sample","operationType":"http","method":"GET","path":"/webhooks/endpoints/{webhook_endpoint_id}","servers":[{"url":"/_mock/en-us/apis/openapi","description":"Mock server","isMockServer":true},{"url":"https://api.dinie.com/api/v3","description":"Production"},{"url":"https://api-dev.dinietech.io/api/v3","description":"Sandbox"}],"parameters":{"path":[{"name":"webhook_endpoint_id","in":"path","required":true,"example":"we_550e8400e29b41d4a716446655440000","schemaId":"components/schemas/WebhookEndpointId"}],"query":[],"querystring":[],"header":[],"cookie":[]},"security":[{"schemes":[{"id":"bearerAuth","type":"http","scheme":"bearer","bearerFormat":"JWT"}],"scopes":[]}],"responseCodes":["200","401","404","429","500"],"pointer":"/webhooks/endpoints/{webhook_endpoint_id}","href":"webhooks/getwebhookendpoint","openApiOperationId":"getWebhookEndpoint","summary":"Get a webhook"},"definitionSamples":[{"lang":"curl","source":"curl https://api.dinie.com/api/v3/webhooks/endpoints/we_550e8400e29b41d4a716446655440000 \\\n  -H \"Authorization: Bearer $DINIE_API_TOKEN\"\n"},{"lang":"Python","source":"from dinie import Dinie\n\nclient = Dinie(\n    client_id=\"dinie_ci_abc123\",\n    client_secret=\"dinie_cs_live_xyz789\"\n)\n\n# Retrieve a webhook endpoint\nendpoint = client.webhooks.retrieve_endpoint(\n    \"we_550e8400e29b41d4a716446655440000\"\n)\n\nprint(endpoint.url)     # \"https://parceiro.example.com/webhooks/dinie\"\nprint(endpoint.events)  # [\"customer.active\", \"credit_offer.available\", \"loan.*\"]\nprint(endpoint.status)  # \"active\"\n"},{"lang":"Node.js","source":"const { Dinie } = require(\"dinie\");\n\nconst client = new Dinie({\n  clientId: \"dinie_ci_abc123\",\n  clientSecret: \"dinie_cs_live_xyz789\",\n});\n\n// Retrieve a webhook endpoint\nconst endpoint = await client.webhooks.retrieveEndpoint(\n  \"we_550e8400e29b41d4a716446655440000\"\n);\n\nconsole.log(endpoint.url);     // \"https://parceiro.example.com/webhooks/dinie\"\nconsole.log(endpoint.events);  // [\"customer.active\", \"credit_offer.available\", \"loan.*\"]\nconsole.log(endpoint.status);  // \"active\"\n"},{"lang":"Ruby","source":"require \"dinie\"\n\nclient = Dinie::Client.new(\n  client_id: \"dinie_ci_abc123\",\n  client_secret: \"dinie_cs_live_xyz789\"\n)\n\n# Retrieve a webhook endpoint\nendpoint = client.webhooks.retrieve_endpoint(\n  \"we_550e8400e29b41d4a716446655440000\"\n)\n\nputs endpoint.url     # \"https://parceiro.example.com/webhooks/dinie\"\nputs endpoint.events  # [\"customer.active\", \"credit_offer.available\", \"loan.*\"]\nputs endpoint.status  # \"active\"\n"}],"isWebhook":false,"hideReplay":false,"servers":[{"url":"/_mock/en-us/apis/openapi","description":"Mock server","isMockServer":true},{"url":"https://api.dinie.com/api/v3","description":"Production"},{"url":"https://api-dev.dinietech.io/api/v3","description":"Sandbox"}],"examples":[]}]}]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Responses","labelTranslationKey":"responses","deepLinkSuffix":"responses"},{"nodeType":"item-content","variant":"responses","responses":[{"code":"200","description":"Webhook endpoint details","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/WebhookEndpoint","exampleIds":["paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/get/responses/200/content/application~1json/example"]}},"schemaId":"components/schemas/WebhookEndpoint","exampleIds":["paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/get/responses/200/content/application~1json/example"]},{"code":"401","description":"Authentication failed","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_8","exampleIds":["paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/get/responses/401/content/application~1problem+json/examples/missing_token","paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/get/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/get/responses/401/content/application~1problem+json/examples/token_expired"]}},"schemaId":"schema_8","exampleIds":["paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/get/responses/401/content/application~1problem+json/examples/missing_token","paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/get/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/get/responses/401/content/application~1problem+json/examples/token_expired"]},{"code":"404","description":"Resource not found","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_56","exampleIds":["paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/get/responses/404/content/application~1problem+json/examples/webhook_endpoint_not_found"]}},"schemaId":"schema_56","exampleIds":["paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/get/responses/404/content/application~1problem+json/examples/webhook_endpoint_not_found"]},{"code":"429","description":"Rate limit exceeded","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_3","exampleIds":["paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/get/responses/429/content/application~1problem+json/example"]}},"schemaId":"schema_3","exampleIds":["paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/get/responses/429/content/application~1problem+json/example"],"headers":{"Retry-After":{"schema":{"type":"integer"},"description":"Seconds until the rate limit resets"}},"headerSchemaId":"schema_4"},{"code":"500","description":"Internal server error","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_5","exampleIds":["paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/get/responses/500/content/application~1problem+json/example"]}},"schemaId":"schema_5","exampleIds":["paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/get/responses/500/content/application~1problem+json/example"]}],"pointer":"/paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/get/responses"}],"panels":[{"children":[{"kind":"response","responseCodes":[{"code":"200","schemaId":"components/schemas/WebhookEndpoint","exampleIds":["paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/get/responses/200/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/WebhookEndpoint","exampleIds":["paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/get/responses/200/content/application~1json/example"]}}},{"code":"401","schemaId":"schema_8","exampleIds":["paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/get/responses/401/content/application~1problem+json/examples/missing_token","paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/get/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/get/responses/401/content/application~1problem+json/examples/token_expired"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_8","exampleIds":["paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/get/responses/401/content/application~1problem+json/examples/missing_token","paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/get/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/get/responses/401/content/application~1problem+json/examples/token_expired"]}}},{"code":"404","schemaId":"schema_56","exampleIds":["paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/get/responses/404/content/application~1problem+json/examples/webhook_endpoint_not_found"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_56","exampleIds":["paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/get/responses/404/content/application~1problem+json/examples/webhook_endpoint_not_found"]}}},{"code":"429","schemaId":"schema_3","exampleIds":["paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/get/responses/429/content/application~1problem+json/example"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_3","exampleIds":["paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/get/responses/429/content/application~1problem+json/example"]}}},{"code":"500","schemaId":"schema_5","exampleIds":["paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/get/responses/500/content/application~1problem+json/example"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_5","exampleIds":["paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/get/responses/500/content/application~1problem+json/example"]}}}],"examples":[]}]}]}]},"httpPath":"/webhooks/endpoints/{webhook_endpoint_id}"},{"label":"Update a webhook","deprecated":false,"httpVerb":"patch","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/en-us/apis/openapi/webhooks/updatewebhookendpoint","routeSlug":"/en-us/apis/openapi/webhooks/updatewebhookendpoint","metadata":{"seo":{"title":"Update a webhook","description":"PATCH /webhooks/endpoints/{webhook_endpoint_id}"}},"content":{"contentType":"item","itemVariant":"httpItem","meta":{"sourceId":"updateWebhookEndpoint","name":"Update a webhook","isWebhook":false,"pointer":"/paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/patch","hasSamples":true},"children":[{"nodeType":"container","children":[{"nodeType":"header","level":2,"label":"Update a webhook","isWebhook":false,"showPageActions":true}],"panels":[]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Request","labelTranslationKey":"request","deepLinkSuffix":"request"},{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"tag","tag":"html","attributes":{"name":"div","attrs":{"className":"endpoint-url"}},"children":[{"$$mdtype":"Node","type":"tag","tag":"html","attributes":{"name":"span","attrs":{"className":"mb mb--patch"}},"children":[{"$$mdtype":"Node","type":"text","attributes":{"content":"PATCH"},"children":[]}]},{"$$mdtype":"Node","type":"text","attributes":{"content":" /webhooks/endpoints/{webhook_endpoint_id}"},"children":[]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Update a webhook endpoint"},"children":[]}]}]}]},{"nodeType":"security","requirements":[{"schemes":[{"name":"bearerAuth","scopes":[],"type":"http","scheme":"bearer","bearerFormat":"JWT","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"JWT token obtained via OAuth2 Client Credentials. Send "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"POST /auth/token"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"with your credentials ("},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"client_id"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" and "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"client_secret"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":") in the"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Authorization: Basic base64(client_id:client_secret)"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" header to receive an"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"access token. Include the token in all requests:"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Authorization: Bearer <token>"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":". The token expires in 1 hour (3600s)."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Prefixes: "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"dinie_cs_live_"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" (production), "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"dinie_cs_test_"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" (sandbox)."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The returned token is prefixed with "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"dinie_at_"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]}]}]}]},{"nodeType":"item-content","variant":"path","label":"Path","labelTranslationKey":"path","parameters":[{"name":"webhook_endpoint_id","in":"path","schemaId":"schema_55","description":"Webhook endpoint ID","required":true}],"pointer":"/paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/patch/parameters"},{"nodeType":"item-content","variant":"body","label":"Request Body","labelTranslationKey":"body","required":true,"mediaTypes":["application/json"],"mediaTypeSchemas":{"application/json":{"schemaId":"components/schemas/UpdateWebhookEndpointRequest","exampleIds":["paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/patch/requestBody/content/application~1json/example"]}},"schemaId":"components/schemas/UpdateWebhookEndpointRequest","exampleIds":["paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/patch/requestBody/content/application~1json/example"],"pointer":"/paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/patch/requestBody"}],"panels":[{"children":[{"kind":"code-sample","source":{"kind":"code-sample","operationType":"http","method":"PATCH","path":"/webhooks/endpoints/{webhook_endpoint_id}","servers":[{"url":"/_mock/en-us/apis/openapi","description":"Mock server","isMockServer":true},{"url":"https://api.dinie.com/api/v3","description":"Production"},{"url":"https://api-dev.dinietech.io/api/v3","description":"Sandbox"}],"parameters":{"path":[{"name":"webhook_endpoint_id","in":"path","required":true,"example":"we_550e8400e29b41d4a716446655440000","schemaId":"components/schemas/WebhookEndpointId"}],"query":[],"querystring":[],"header":[],"cookie":[]},"security":[{"schemes":[{"id":"bearerAuth","type":"http","scheme":"bearer","bearerFormat":"JWT"}],"scopes":[]}],"requestBody":{"application/json":{"schemaId":"components/schemas/UpdateWebhookEndpointRequest","exampleIds":["paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/patch/requestBody/content/application~1json/example"]}},"responseCodes":["200","400","401","404","422","429","500"],"pointer":"/webhooks/endpoints/{webhook_endpoint_id}","href":"webhooks/updatewebhookendpoint","openApiOperationId":"updateWebhookEndpoint","summary":"Update a webhook"},"definitionSamples":[{"lang":"curl","source":"curl -X PATCH https://api.dinie.com/api/v3/webhooks/endpoints/we_550e8400e29b41d4a716446655440000 \\\n  -H \"Authorization: Bearer $DINIE_API_TOKEN\" \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\n    \"events\": [\"customer.*\", \"loan.*\"],\n    \"status\": \"active\"\n  }'\n"},{"lang":"Python","source":"from dinie import Dinie\n\nclient = Dinie(\n    client_id=\"dinie_ci_abc123\",\n    client_secret=\"dinie_cs_live_xyz789\"\n)\n\n# Update webhook endpoint events and status\nendpoint = client.webhooks.update_endpoint(\n    \"we_550e8400e29b41d4a716446655440000\",\n    events=[\"customer.*\", \"loan.*\"],\n    status=\"active\"\n)\n\nprint(endpoint.events)  # [\"customer.*\", \"loan.*\"]\nprint(endpoint.status)  # \"active\"\n"},{"lang":"Node.js","source":"const { Dinie } = require(\"dinie\");\n\nconst client = new Dinie({\n  clientId: \"dinie_ci_abc123\",\n  clientSecret: \"dinie_cs_live_xyz789\",\n});\n\n// Update webhook endpoint events and status\nconst endpoint = await client.webhooks.updateEndpoint(\n  \"we_550e8400e29b41d4a716446655440000\",\n  {\n    events: [\"customer.*\", \"loan.*\"],\n    status: \"active\",\n  }\n);\n\nconsole.log(endpoint.events);  // [\"customer.*\", \"loan.*\"]\nconsole.log(endpoint.status);  // \"active\"\n"},{"lang":"Ruby","source":"require \"dinie\"\n\nclient = Dinie::Client.new(\n  client_id: \"dinie_ci_abc123\",\n  client_secret: \"dinie_cs_live_xyz789\"\n)\n\n# Update webhook endpoint events and status\nendpoint = client.webhooks.update_endpoint(\n  \"we_550e8400e29b41d4a716446655440000\",\n  events: [\"customer.*\", \"loan.*\"],\n  status: \"active\"\n)\n\nputs endpoint.events  # [\"customer.*\", \"loan.*\"]\nputs endpoint.status  # \"active\"\n"}],"isWebhook":false,"hideReplay":false,"servers":[{"url":"/_mock/en-us/apis/openapi","description":"Mock server","isMockServer":true},{"url":"https://api.dinie.com/api/v3","description":"Production"},{"url":"https://api-dev.dinietech.io/api/v3","description":"Sandbox"}],"schemaId":"components/schemas/UpdateWebhookEndpointRequest","exampleIds":["paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/patch/requestBody/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeSchemas":{"application/json":{"schemaId":"components/schemas/UpdateWebhookEndpointRequest","exampleIds":["paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/patch/requestBody/content/application~1json/example"]}},"examples":[{}]}]}]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Responses","labelTranslationKey":"responses","deepLinkSuffix":"responses"},{"nodeType":"item-content","variant":"responses","responses":[{"code":"200","description":"Webhook endpoint updated","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/WebhookEndpoint","exampleIds":["paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/patch/responses/200/content/application~1json/example"]}},"schemaId":"components/schemas/WebhookEndpoint","exampleIds":["paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/patch/responses/200/content/application~1json/example"]},{"code":"400","description":"Bad request","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_7","exampleIds":["paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/patch/responses/400/content/application~1problem+json/examples/invalid_content_type","paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/patch/responses/400/content/application~1problem+json/examples/malformed_body"]}},"schemaId":"schema_7","exampleIds":["paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/patch/responses/400/content/application~1problem+json/examples/invalid_content_type","paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/patch/responses/400/content/application~1problem+json/examples/malformed_body"]},{"code":"401","description":"Authentication failed","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_8","exampleIds":["paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/patch/responses/401/content/application~1problem+json/examples/missing_token","paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/patch/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/patch/responses/401/content/application~1problem+json/examples/token_expired"]}},"schemaId":"schema_8","exampleIds":["paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/patch/responses/401/content/application~1problem+json/examples/missing_token","paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/patch/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/patch/responses/401/content/application~1problem+json/examples/token_expired"]},{"code":"404","description":"Resource not found","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_56","exampleIds":["paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/patch/responses/404/content/application~1problem+json/examples/webhook_endpoint_not_found"]}},"schemaId":"schema_56","exampleIds":["paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/patch/responses/404/content/application~1problem+json/examples/webhook_endpoint_not_found"]},{"code":"422","description":"Validation failed","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_57","exampleIds":["paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/patch/responses/422/content/application~1problem+json/examples/invalid_url","paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/patch/responses/422/content/application~1problem+json/examples/invalid_events","paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/patch/responses/422/content/application~1problem+json/examples/invalid_status"]}},"schemaId":"schema_57","exampleIds":["paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/patch/responses/422/content/application~1problem+json/examples/invalid_url","paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/patch/responses/422/content/application~1problem+json/examples/invalid_events","paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/patch/responses/422/content/application~1problem+json/examples/invalid_status"]},{"code":"429","description":"Rate limit exceeded","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_3","exampleIds":["paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/patch/responses/429/content/application~1problem+json/example"]}},"schemaId":"schema_3","exampleIds":["paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/patch/responses/429/content/application~1problem+json/example"],"headers":{"Retry-After":{"schema":{"type":"integer"},"description":"Seconds until the rate limit resets"}},"headerSchemaId":"schema_4"},{"code":"500","description":"Internal server error","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_5","exampleIds":["paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/patch/responses/500/content/application~1problem+json/example"]}},"schemaId":"schema_5","exampleIds":["paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/patch/responses/500/content/application~1problem+json/example"]}],"pointer":"/paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/patch/responses"}],"panels":[{"children":[{"kind":"response","responseCodes":[{"code":"200","schemaId":"components/schemas/WebhookEndpoint","exampleIds":["paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/patch/responses/200/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/WebhookEndpoint","exampleIds":["paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/patch/responses/200/content/application~1json/example"]}}},{"code":"400","schemaId":"schema_7","exampleIds":["paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/patch/responses/400/content/application~1problem+json/examples/invalid_content_type","paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/patch/responses/400/content/application~1problem+json/examples/malformed_body"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_7","exampleIds":["paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/patch/responses/400/content/application~1problem+json/examples/invalid_content_type","paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/patch/responses/400/content/application~1problem+json/examples/malformed_body"]}}},{"code":"401","schemaId":"schema_8","exampleIds":["paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/patch/responses/401/content/application~1problem+json/examples/missing_token","paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/patch/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/patch/responses/401/content/application~1problem+json/examples/token_expired"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_8","exampleIds":["paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/patch/responses/401/content/application~1problem+json/examples/missing_token","paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/patch/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/patch/responses/401/content/application~1problem+json/examples/token_expired"]}}},{"code":"404","schemaId":"schema_56","exampleIds":["paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/patch/responses/404/content/application~1problem+json/examples/webhook_endpoint_not_found"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_56","exampleIds":["paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/patch/responses/404/content/application~1problem+json/examples/webhook_endpoint_not_found"]}}},{"code":"422","schemaId":"schema_57","exampleIds":["paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/patch/responses/422/content/application~1problem+json/examples/invalid_url","paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/patch/responses/422/content/application~1problem+json/examples/invalid_events","paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/patch/responses/422/content/application~1problem+json/examples/invalid_status"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_57","exampleIds":["paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/patch/responses/422/content/application~1problem+json/examples/invalid_url","paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/patch/responses/422/content/application~1problem+json/examples/invalid_events","paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/patch/responses/422/content/application~1problem+json/examples/invalid_status"]}}},{"code":"429","schemaId":"schema_3","exampleIds":["paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/patch/responses/429/content/application~1problem+json/example"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_3","exampleIds":["paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/patch/responses/429/content/application~1problem+json/example"]}}},{"code":"500","schemaId":"schema_5","exampleIds":["paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/patch/responses/500/content/application~1problem+json/example"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_5","exampleIds":["paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/patch/responses/500/content/application~1problem+json/example"]}}}],"examples":[]}]}]}]},"httpPath":"/webhooks/endpoints/{webhook_endpoint_id}"},{"label":"Delete a webhook","deprecated":false,"httpVerb":"delete","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/en-us/apis/openapi/webhooks/deletewebhookendpoint","routeSlug":"/en-us/apis/openapi/webhooks/deletewebhookendpoint","metadata":{"seo":{"title":"Delete a webhook","description":"DELETE /webhooks/endpoints/{webhook_endpoint_id}"}},"content":{"contentType":"item","itemVariant":"httpItem","meta":{"sourceId":"deleteWebhookEndpoint","name":"Delete a webhook","isWebhook":false,"pointer":"/paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/delete","hasSamples":true},"children":[{"nodeType":"container","children":[{"nodeType":"header","level":2,"label":"Delete a webhook","isWebhook":false,"showPageActions":true}],"panels":[]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Request","labelTranslationKey":"request","deepLinkSuffix":"request"},{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"tag","tag":"html","attributes":{"name":"div","attrs":{"className":"endpoint-url"}},"children":[{"$$mdtype":"Node","type":"tag","tag":"html","attributes":{"name":"span","attrs":{"className":"mb mb--del"}},"children":[{"$$mdtype":"Node","type":"text","attributes":{"content":"DELETE"},"children":[]}]},{"$$mdtype":"Node","type":"text","attributes":{"content":" /webhooks/endpoints/{webhook_endpoint_id}"},"children":[]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Delete a webhook endpoint"},"children":[]}]}]}]},{"nodeType":"security","requirements":[{"schemes":[{"name":"bearerAuth","scopes":[],"type":"http","scheme":"bearer","bearerFormat":"JWT","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"JWT token obtained via OAuth2 Client Credentials. Send "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"POST /auth/token"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"with your credentials ("},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"client_id"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" and "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"client_secret"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":") in the"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Authorization: Basic base64(client_id:client_secret)"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" header to receive an"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"access token. Include the token in all requests:"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Authorization: Bearer <token>"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":". The token expires in 1 hour (3600s)."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Prefixes: "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"dinie_cs_live_"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" (production), "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"dinie_cs_test_"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" (sandbox)."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The returned token is prefixed with "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"dinie_at_"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]}]}]}]},{"nodeType":"item-content","variant":"path","label":"Path","labelTranslationKey":"path","parameters":[{"name":"webhook_endpoint_id","in":"path","schemaId":"schema_55","description":"Webhook endpoint ID","required":true}],"pointer":"/paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/delete/parameters"}],"panels":[{"children":[{"kind":"code-sample","source":{"kind":"code-sample","operationType":"http","method":"DELETE","path":"/webhooks/endpoints/{webhook_endpoint_id}","servers":[{"url":"/_mock/en-us/apis/openapi","description":"Mock server","isMockServer":true},{"url":"https://api.dinie.com/api/v3","description":"Production"},{"url":"https://api-dev.dinietech.io/api/v3","description":"Sandbox"}],"parameters":{"path":[{"name":"webhook_endpoint_id","in":"path","required":true,"example":"we_550e8400e29b41d4a716446655440000","schemaId":"components/schemas/WebhookEndpointId"}],"query":[],"querystring":[],"header":[],"cookie":[]},"security":[{"schemes":[{"id":"bearerAuth","type":"http","scheme":"bearer","bearerFormat":"JWT"}],"scopes":[]}],"responseCodes":["204","401","404","429","500"],"pointer":"/webhooks/endpoints/{webhook_endpoint_id}","href":"webhooks/deletewebhookendpoint","openApiOperationId":"deleteWebhookEndpoint","summary":"Delete a webhook"},"definitionSamples":[{"lang":"curl","source":"curl -X DELETE https://api.dinie.com/api/v3/webhooks/endpoints/we_550e8400e29b41d4a716446655440000 \\\n  -H \"Authorization: Bearer $DINIE_API_TOKEN\"\n"},{"lang":"Python","source":"from dinie import Dinie\n\nclient = Dinie(\n    client_id=\"dinie_ci_abc123\",\n    client_secret=\"dinie_cs_live_xyz789\"\n)\n\n# Delete a webhook endpoint\nclient.webhooks.delete_endpoint(\"we_550e8400e29b41d4a716446655440000\")\n# 204 No Content -- endpoint deleted, deliveries stopped\n"},{"lang":"Node.js","source":"const { Dinie } = require(\"dinie\");\n\nconst client = new Dinie({\n  clientId: \"dinie_ci_abc123\",\n  clientSecret: \"dinie_cs_live_xyz789\",\n});\n\n// Delete a webhook endpoint\nawait client.webhooks.deleteEndpoint(\n  \"we_550e8400e29b41d4a716446655440000\"\n);\n// 204 No Content -- endpoint deleted, deliveries stopped\n"},{"lang":"Ruby","source":"require \"dinie\"\n\nclient = Dinie::Client.new(\n  client_id: \"dinie_ci_abc123\",\n  client_secret: \"dinie_cs_live_xyz789\"\n)\n\n# Delete a webhook endpoint\nclient.webhooks.delete_endpoint(\"we_550e8400e29b41d4a716446655440000\")\n# 204 No Content -- endpoint deleted, deliveries stopped\n"}],"isWebhook":false,"hideReplay":false,"servers":[{"url":"/_mock/en-us/apis/openapi","description":"Mock server","isMockServer":true},{"url":"https://api.dinie.com/api/v3","description":"Production"},{"url":"https://api-dev.dinietech.io/api/v3","description":"Sandbox"}],"examples":[]}]}]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Responses","labelTranslationKey":"responses","deepLinkSuffix":"responses"},{"nodeType":"item-content","variant":"responses","responses":[{"code":"204","description":"Webhook endpoint deleted (empty body)"},{"code":"401","description":"Authentication failed","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_8","exampleIds":["paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/delete/responses/401/content/application~1problem+json/examples/missing_token","paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/delete/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/delete/responses/401/content/application~1problem+json/examples/token_expired"]}},"schemaId":"schema_8","exampleIds":["paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/delete/responses/401/content/application~1problem+json/examples/missing_token","paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/delete/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/delete/responses/401/content/application~1problem+json/examples/token_expired"]},{"code":"404","description":"Resource not found","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_56","exampleIds":["paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/delete/responses/404/content/application~1problem+json/examples/webhook_endpoint_not_found"]}},"schemaId":"schema_56","exampleIds":["paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/delete/responses/404/content/application~1problem+json/examples/webhook_endpoint_not_found"]},{"code":"429","description":"Rate limit exceeded","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_3","exampleIds":["paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/delete/responses/429/content/application~1problem+json/example"]}},"schemaId":"schema_3","exampleIds":["paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/delete/responses/429/content/application~1problem+json/example"],"headers":{"Retry-After":{"schema":{"type":"integer"},"description":"Seconds until the rate limit resets"}},"headerSchemaId":"schema_4"},{"code":"500","description":"Internal server error","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_5","exampleIds":["paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/delete/responses/500/content/application~1problem+json/example"]}},"schemaId":"schema_5","exampleIds":["paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/delete/responses/500/content/application~1problem+json/example"]}],"pointer":"/paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/delete/responses"}],"panels":[{"children":[{"kind":"response","responseCodes":[{"code":"204"},{"code":"401","schemaId":"schema_8","exampleIds":["paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/delete/responses/401/content/application~1problem+json/examples/missing_token","paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/delete/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/delete/responses/401/content/application~1problem+json/examples/token_expired"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_8","exampleIds":["paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/delete/responses/401/content/application~1problem+json/examples/missing_token","paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/delete/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/delete/responses/401/content/application~1problem+json/examples/token_expired"]}}},{"code":"404","schemaId":"schema_56","exampleIds":["paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/delete/responses/404/content/application~1problem+json/examples/webhook_endpoint_not_found"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_56","exampleIds":["paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/delete/responses/404/content/application~1problem+json/examples/webhook_endpoint_not_found"]}}},{"code":"429","schemaId":"schema_3","exampleIds":["paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/delete/responses/429/content/application~1problem+json/example"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_3","exampleIds":["paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/delete/responses/429/content/application~1problem+json/example"]}}},{"code":"500","schemaId":"schema_5","exampleIds":["paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/delete/responses/500/content/application~1problem+json/example"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_5","exampleIds":["paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/delete/responses/500/content/application~1problem+json/example"]}}}],"examples":[]}]}]}]},"httpPath":"/webhooks/endpoints/{webhook_endpoint_id}"},{"label":"Rotate the secret","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/en-us/apis/openapi/webhooks/rotatewebhooksecret","routeSlug":"/en-us/apis/openapi/webhooks/rotatewebhooksecret","metadata":{"seo":{"title":"Rotate the secret","description":"POST /webhooks/endpoints/{webhook_endpoint_id}/rotate-secret"}},"content":{"contentType":"item","itemVariant":"httpItem","meta":{"sourceId":"rotateWebhookSecret","name":"Rotate the secret","isWebhook":false,"pointer":"/paths/~1webhooks~1endpoints~1{webhook_endpoint_id}~1rotate-secret/post","hasSamples":true},"children":[{"nodeType":"container","children":[{"nodeType":"header","level":2,"label":"Rotate the secret","isWebhook":false,"showPageActions":true}],"panels":[]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Request","labelTranslationKey":"request","deepLinkSuffix":"request"},{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"tag","tag":"html","attributes":{"name":"div","attrs":{"className":"endpoint-url"}},"children":[{"$$mdtype":"Node","type":"tag","tag":"html","attributes":{"name":"span","attrs":{"className":"mb mb--post"}},"children":[{"$$mdtype":"Node","type":"text","attributes":{"content":"POST"},"children":[]}]},{"$$mdtype":"Node","type":"text","attributes":{"content":" /webhooks/endpoints/{webhook_endpoint_id}/rotate-secret"},"children":[]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Rotate a webhook's signing secret"},"children":[]}]}]}]},{"nodeType":"security","requirements":[{"schemes":[{"name":"bearerAuth","scopes":[],"type":"http","scheme":"bearer","bearerFormat":"JWT","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"JWT token obtained via OAuth2 Client Credentials. Send "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"POST /auth/token"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"with your credentials ("},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"client_id"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" and "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"client_secret"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":") in the"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Authorization: Basic base64(client_id:client_secret)"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" header to receive an"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"access token. Include the token in all requests:"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Authorization: Bearer <token>"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":". The token expires in 1 hour (3600s)."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Prefixes: "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"dinie_cs_live_"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" (production), "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"dinie_cs_test_"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" (sandbox)."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The returned token is prefixed with "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"dinie_at_"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]}]}]}]},{"nodeType":"item-content","variant":"path","label":"Path","labelTranslationKey":"path","parameters":[{"name":"webhook_endpoint_id","in":"path","schemaId":"schema_55","description":"Webhook endpoint ID","required":true}],"pointer":"/paths/~1webhooks~1endpoints~1{webhook_endpoint_id}~1rotate-secret/post/parameters"},{"nodeType":"item-content","variant":"body","label":"Request Body","labelTranslationKey":"body","mediaTypes":["application/json"],"mediaTypeSchemas":{"application/json":{"schemaId":"schema_58","exampleIds":["paths/~1webhooks~1endpoints~1{webhook_endpoint_id}~1rotate-secret/post/requestBody/content/application~1json/example"]}},"schemaId":"schema_58","exampleIds":["paths/~1webhooks~1endpoints~1{webhook_endpoint_id}~1rotate-secret/post/requestBody/content/application~1json/example"],"pointer":"/paths/~1webhooks~1endpoints~1{webhook_endpoint_id}~1rotate-secret/post/requestBody"}],"panels":[{"children":[{"kind":"code-sample","source":{"kind":"code-sample","operationType":"http","method":"POST","path":"/webhooks/endpoints/{webhook_endpoint_id}/rotate-secret","servers":[{"url":"/_mock/en-us/apis/openapi","description":"Mock server","isMockServer":true},{"url":"https://api.dinie.com/api/v3","description":"Production"},{"url":"https://api-dev.dinietech.io/api/v3","description":"Sandbox"}],"parameters":{"path":[{"name":"webhook_endpoint_id","in":"path","required":true,"example":"we_550e8400e29b41d4a716446655440000","schemaId":"components/schemas/WebhookEndpointId"}],"query":[],"querystring":[],"header":[],"cookie":[]},"security":[{"schemes":[{"id":"bearerAuth","type":"http","scheme":"bearer","bearerFormat":"JWT"}],"scopes":[]}],"requestBody":{"application/json":{"schemaId":"schema_58","exampleIds":["paths/~1webhooks~1endpoints~1{webhook_endpoint_id}~1rotate-secret/post/requestBody/content/application~1json/example"]}},"responseCodes":["200","400","401","404","422","429","500"],"pointer":"/webhooks/endpoints/{webhook_endpoint_id}/rotate-secret","href":"webhooks/rotatewebhooksecret","openApiOperationId":"rotateWebhookSecret","summary":"Rotate the secret"},"definitionSamples":[{"lang":"curl","source":"curl -X POST https://api.dinie.com/api/v3/webhooks/endpoints/we_550e8400e29b41d4a716446655440000/rotate-secret \\\n  -H \"Authorization: Bearer $DINIE_API_TOKEN\" \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\"expire_current_in\": 3600}'\n"},{"lang":"Python","source":"from dinie import Dinie\n\nclient = Dinie(\n    client_id=\"dinie_ci_abc123\",\n    client_secret=\"dinie_cs_live_xyz789\"\n)\n\n# Rotate the webhook signing secret\nrotation = client.webhooks.rotate_secret(\n    \"we_550e8400e29b41d4a716446655440000\",\n    expire_current_in=3600  # previous secret valid for 1 more hour\n)\n\nprint(rotation.secret)                       # \"whsec_novo1b2c3...\"\nprint(rotation.previous_secret_expires_at)   # 1709550000\n"},{"lang":"Node.js","source":"const { Dinie } = require(\"dinie\");\n\nconst client = new Dinie({\n  clientId: \"dinie_ci_abc123\",\n  clientSecret: \"dinie_cs_live_xyz789\",\n});\n\n// Rotate the webhook signing secret\nconst rotation = await client.webhooks.rotateSecret(\n  \"we_550e8400e29b41d4a716446655440000\",\n  { expireCurrentIn: 3600 }  // previous secret valid for 1 more hour\n);\n\nconsole.log(rotation.secret);                       // \"whsec_novo1b2c3...\"\nconsole.log(rotation.previousSecretExpiresAt);      // 1709550000\n"},{"lang":"Ruby","source":"require \"dinie\"\n\nclient = Dinie::Client.new(\n  client_id: \"dinie_ci_abc123\",\n  client_secret: \"dinie_cs_live_xyz789\"\n)\n\n# Rotate the webhook signing secret\nrotation = client.webhooks.rotate_secret(\n  \"we_550e8400e29b41d4a716446655440000\",\n  expire_current_in: 3600  # previous secret valid for 1 more hour\n)\n\nputs rotation.secret                       # \"whsec_novo1b2c3...\"\nputs rotation.previous_secret_expires_at   # 1709550000\n"}],"isWebhook":false,"hideReplay":false,"servers":[{"url":"/_mock/en-us/apis/openapi","description":"Mock server","isMockServer":true},{"url":"https://api.dinie.com/api/v3","description":"Production"},{"url":"https://api-dev.dinietech.io/api/v3","description":"Sandbox"}],"schemaId":"schema_58","exampleIds":["paths/~1webhooks~1endpoints~1{webhook_endpoint_id}~1rotate-secret/post/requestBody/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeSchemas":{"application/json":{"schemaId":"schema_58","exampleIds":["paths/~1webhooks~1endpoints~1{webhook_endpoint_id}~1rotate-secret/post/requestBody/content/application~1json/example"]}},"examples":[{}]}]}]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Responses","labelTranslationKey":"responses","deepLinkSuffix":"responses"},{"nodeType":"item-content","variant":"responses","responses":[{"code":"200","description":"Secret rotated","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/WebhookSecretRotation","exampleIds":["paths/~1webhooks~1endpoints~1{webhook_endpoint_id}~1rotate-secret/post/responses/200/content/application~1json/example"]}},"schemaId":"components/schemas/WebhookSecretRotation","exampleIds":["paths/~1webhooks~1endpoints~1{webhook_endpoint_id}~1rotate-secret/post/responses/200/content/application~1json/example"]},{"code":"400","description":"Bad request","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_59","exampleIds":["paths/~1webhooks~1endpoints~1{webhook_endpoint_id}~1rotate-secret/post/responses/400/content/application~1problem+json/examples/invalid_content_type"]}},"schemaId":"schema_59","exampleIds":["paths/~1webhooks~1endpoints~1{webhook_endpoint_id}~1rotate-secret/post/responses/400/content/application~1problem+json/examples/invalid_content_type"]},{"code":"401","description":"Authentication failed","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_8","exampleIds":["paths/~1webhooks~1endpoints~1{webhook_endpoint_id}~1rotate-secret/post/responses/401/content/application~1problem+json/examples/missing_token","paths/~1webhooks~1endpoints~1{webhook_endpoint_id}~1rotate-secret/post/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1webhooks~1endpoints~1{webhook_endpoint_id}~1rotate-secret/post/responses/401/content/application~1problem+json/examples/token_expired"]}},"schemaId":"schema_8","exampleIds":["paths/~1webhooks~1endpoints~1{webhook_endpoint_id}~1rotate-secret/post/responses/401/content/application~1problem+json/examples/missing_token","paths/~1webhooks~1endpoints~1{webhook_endpoint_id}~1rotate-secret/post/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1webhooks~1endpoints~1{webhook_endpoint_id}~1rotate-secret/post/responses/401/content/application~1problem+json/examples/token_expired"]},{"code":"404","description":"Resource not found","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_56","exampleIds":["paths/~1webhooks~1endpoints~1{webhook_endpoint_id}~1rotate-secret/post/responses/404/content/application~1problem+json/examples/webhook_endpoint_not_found"]}},"schemaId":"schema_56","exampleIds":["paths/~1webhooks~1endpoints~1{webhook_endpoint_id}~1rotate-secret/post/responses/404/content/application~1problem+json/examples/webhook_endpoint_not_found"]},{"code":"422","description":"Validation failed","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_60","exampleIds":["paths/~1webhooks~1endpoints~1{webhook_endpoint_id}~1rotate-secret/post/responses/422/content/application~1problem+json/examples/invalid_expire_current_in"]}},"schemaId":"schema_60","exampleIds":["paths/~1webhooks~1endpoints~1{webhook_endpoint_id}~1rotate-secret/post/responses/422/content/application~1problem+json/examples/invalid_expire_current_in"]},{"code":"429","description":"Rate limit exceeded","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_3","exampleIds":["paths/~1webhooks~1endpoints~1{webhook_endpoint_id}~1rotate-secret/post/responses/429/content/application~1problem+json/example"]}},"schemaId":"schema_3","exampleIds":["paths/~1webhooks~1endpoints~1{webhook_endpoint_id}~1rotate-secret/post/responses/429/content/application~1problem+json/example"],"headers":{"Retry-After":{"schema":{"type":"integer"},"description":"Seconds until the rate limit resets"}},"headerSchemaId":"schema_4"},{"code":"500","description":"Internal server error","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_5","exampleIds":["paths/~1webhooks~1endpoints~1{webhook_endpoint_id}~1rotate-secret/post/responses/500/content/application~1problem+json/example"]}},"schemaId":"schema_5","exampleIds":["paths/~1webhooks~1endpoints~1{webhook_endpoint_id}~1rotate-secret/post/responses/500/content/application~1problem+json/example"]}],"pointer":"/paths/~1webhooks~1endpoints~1{webhook_endpoint_id}~1rotate-secret/post/responses"}],"panels":[{"children":[{"kind":"response","responseCodes":[{"code":"200","schemaId":"components/schemas/WebhookSecretRotation","exampleIds":["paths/~1webhooks~1endpoints~1{webhook_endpoint_id}~1rotate-secret/post/responses/200/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/WebhookSecretRotation","exampleIds":["paths/~1webhooks~1endpoints~1{webhook_endpoint_id}~1rotate-secret/post/responses/200/content/application~1json/example"]}}},{"code":"400","schemaId":"schema_59","exampleIds":["paths/~1webhooks~1endpoints~1{webhook_endpoint_id}~1rotate-secret/post/responses/400/content/application~1problem+json/examples/invalid_content_type"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_59","exampleIds":["paths/~1webhooks~1endpoints~1{webhook_endpoint_id}~1rotate-secret/post/responses/400/content/application~1problem+json/examples/invalid_content_type"]}}},{"code":"401","schemaId":"schema_8","exampleIds":["paths/~1webhooks~1endpoints~1{webhook_endpoint_id}~1rotate-secret/post/responses/401/content/application~1problem+json/examples/missing_token","paths/~1webhooks~1endpoints~1{webhook_endpoint_id}~1rotate-secret/post/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1webhooks~1endpoints~1{webhook_endpoint_id}~1rotate-secret/post/responses/401/content/application~1problem+json/examples/token_expired"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_8","exampleIds":["paths/~1webhooks~1endpoints~1{webhook_endpoint_id}~1rotate-secret/post/responses/401/content/application~1problem+json/examples/missing_token","paths/~1webhooks~1endpoints~1{webhook_endpoint_id}~1rotate-secret/post/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1webhooks~1endpoints~1{webhook_endpoint_id}~1rotate-secret/post/responses/401/content/application~1problem+json/examples/token_expired"]}}},{"code":"404","schemaId":"schema_56","exampleIds":["paths/~1webhooks~1endpoints~1{webhook_endpoint_id}~1rotate-secret/post/responses/404/content/application~1problem+json/examples/webhook_endpoint_not_found"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_56","exampleIds":["paths/~1webhooks~1endpoints~1{webhook_endpoint_id}~1rotate-secret/post/responses/404/content/application~1problem+json/examples/webhook_endpoint_not_found"]}}},{"code":"422","schemaId":"schema_60","exampleIds":["paths/~1webhooks~1endpoints~1{webhook_endpoint_id}~1rotate-secret/post/responses/422/content/application~1problem+json/examples/invalid_expire_current_in"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_60","exampleIds":["paths/~1webhooks~1endpoints~1{webhook_endpoint_id}~1rotate-secret/post/responses/422/content/application~1problem+json/examples/invalid_expire_current_in"]}}},{"code":"429","schemaId":"schema_3","exampleIds":["paths/~1webhooks~1endpoints~1{webhook_endpoint_id}~1rotate-secret/post/responses/429/content/application~1problem+json/example"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_3","exampleIds":["paths/~1webhooks~1endpoints~1{webhook_endpoint_id}~1rotate-secret/post/responses/429/content/application~1problem+json/example"]}}},{"code":"500","schemaId":"schema_5","exampleIds":["paths/~1webhooks~1endpoints~1{webhook_endpoint_id}~1rotate-secret/post/responses/500/content/application~1problem+json/example"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_5","exampleIds":["paths/~1webhooks~1endpoints~1{webhook_endpoint_id}~1rotate-secret/post/responses/500/content/application~1problem+json/example"]}}}],"examples":[]}]}]}]},"httpPath":"/webhooks/endpoints/{webhook_endpoint_id}/rotate-secret"},{"label":"List webhook deliveries","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/en-us/apis/openapi/webhooks/listwebhookdeliveries","routeSlug":"/en-us/apis/openapi/webhooks/listwebhookdeliveries","metadata":{"seo":{"title":"List webhook deliveries","description":"GET /webhooks/endpoints/{endpoint_id}/deliveries"}},"content":{"contentType":"item","itemVariant":"httpItem","meta":{"sourceId":"listWebhookDeliveries","name":"List webhook deliveries","isWebhook":false,"pointer":"/paths/~1webhooks~1endpoints~1{endpoint_id}~1deliveries/get","hasSamples":false},"children":[{"nodeType":"container","children":[{"nodeType":"header","level":2,"label":"List webhook deliveries","isWebhook":false,"showPageActions":true}],"panels":[]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Request","labelTranslationKey":"request","deepLinkSuffix":"request"},{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"tag","tag":"html","attributes":{"name":"div","attrs":{"className":"endpoint-url"}},"children":[{"$$mdtype":"Node","type":"tag","tag":"html","attributes":{"name":"span","attrs":{"className":"mb mb--get"}},"children":[{"$$mdtype":"Node","type":"text","attributes":{"content":"GET"},"children":[]}]},{"$$mdtype":"Node","type":"text","attributes":{"content":" /webhooks/endpoints/{endpoint_id}/deliveries"},"children":[]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Paginated delivery history for a webhook endpoint, newest first"},"children":[]}]}]}]},{"nodeType":"security","requirements":[{"schemes":[{"name":"bearerAuth","scopes":[],"type":"http","scheme":"bearer","bearerFormat":"JWT","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"JWT token obtained via OAuth2 Client Credentials. Send "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"POST /auth/token"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"with your credentials ("},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"client_id"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" and "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"client_secret"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":") in the"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Authorization: Basic base64(client_id:client_secret)"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" header to receive an"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"access token. Include the token in all requests:"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Authorization: Bearer <token>"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":". The token expires in 1 hour (3600s)."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Prefixes: "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"dinie_cs_live_"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" (production), "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"dinie_cs_test_"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" (sandbox)."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The returned token is prefixed with "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"dinie_at_"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]}]}]}]},{"nodeType":"item-content","variant":"path","label":"Path","labelTranslationKey":"path","parameters":[{"name":"endpoint_id","in":"path","schemaId":"schema_55","required":true}],"pointer":"/paths/~1webhooks~1endpoints~1{endpoint_id}~1deliveries/get/parameters"},{"nodeType":"item-content","variant":"query","label":"Query","labelTranslationKey":"query","parameters":[{"name":"limit","in":"query","schemaId":"schema_19"},{"name":"starting_after","in":"query","schemaId":"schema_61"}],"pointer":"/paths/~1webhooks~1endpoints~1{endpoint_id}~1deliveries/get/parameters"}],"panels":[{"children":[{"kind":"code-sample","source":{"kind":"code-sample","operationType":"http","method":"GET","path":"/webhooks/endpoints/{endpoint_id}/deliveries","servers":[{"url":"/_mock/en-us/apis/openapi","description":"Mock server","isMockServer":true},{"url":"https://api.dinie.com/api/v3","description":"Production"},{"url":"https://api-dev.dinietech.io/api/v3","description":"Sandbox"}],"parameters":{"path":[{"name":"endpoint_id","in":"path","required":true,"example":"we_550e8400e29b41d4a716446655440000","schemaId":"components/schemas/WebhookEndpointId"}],"query":[{"name":"limit","in":"query","required":false,"schemaId":"schema_19"},{"name":"starting_after","in":"query","required":false,"example":"dlv_550e8400e29b41d4a716446655440000","schemaId":"components/schemas/WebhookDeliveryId"}],"querystring":[],"header":[],"cookie":[]},"security":[{"schemes":[{"id":"bearerAuth","type":"http","scheme":"bearer","bearerFormat":"JWT"}],"scopes":[]}],"responseCodes":["200","401","404","429","500"],"pointer":"/webhooks/endpoints/{endpoint_id}/deliveries","href":"webhooks/listwebhookdeliveries","openApiOperationId":"listWebhookDeliveries","summary":"List webhook deliveries"},"isWebhook":false,"hideReplay":false,"servers":[{"url":"/_mock/en-us/apis/openapi","description":"Mock server","isMockServer":true},{"url":"https://api.dinie.com/api/v3","description":"Production"},{"url":"https://api-dev.dinietech.io/api/v3","description":"Sandbox"}],"examples":[]}]}]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Responses","labelTranslationKey":"responses","deepLinkSuffix":"responses"},{"nodeType":"item-content","variant":"responses","responses":[{"code":"200","description":"Delivery history","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_62"}},"schemaId":"schema_62"},{"code":"401","description":"Authentication failed","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_8","exampleIds":["paths/~1webhooks~1endpoints~1{endpoint_id}~1deliveries/get/responses/401/content/application~1problem+json/examples/missing_token","paths/~1webhooks~1endpoints~1{endpoint_id}~1deliveries/get/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1webhooks~1endpoints~1{endpoint_id}~1deliveries/get/responses/401/content/application~1problem+json/examples/token_expired"]}},"schemaId":"schema_8","exampleIds":["paths/~1webhooks~1endpoints~1{endpoint_id}~1deliveries/get/responses/401/content/application~1problem+json/examples/missing_token","paths/~1webhooks~1endpoints~1{endpoint_id}~1deliveries/get/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1webhooks~1endpoints~1{endpoint_id}~1deliveries/get/responses/401/content/application~1problem+json/examples/token_expired"]},{"code":"404","description":"Webhook endpoint or delivery not found","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_63","exampleIds":["paths/~1webhooks~1endpoints~1{endpoint_id}~1deliveries/get/responses/404/content/application~1problem+json/example"]}},"schemaId":"schema_63","exampleIds":["paths/~1webhooks~1endpoints~1{endpoint_id}~1deliveries/get/responses/404/content/application~1problem+json/example"]},{"code":"429","description":"Rate limit exceeded","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_3","exampleIds":["paths/~1webhooks~1endpoints~1{endpoint_id}~1deliveries/get/responses/429/content/application~1problem+json/example"]}},"schemaId":"schema_3","exampleIds":["paths/~1webhooks~1endpoints~1{endpoint_id}~1deliveries/get/responses/429/content/application~1problem+json/example"],"headers":{"Retry-After":{"schema":{"type":"integer"},"description":"Seconds until the rate limit resets"}},"headerSchemaId":"schema_4"},{"code":"500","description":"Internal server error","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_5","exampleIds":["paths/~1webhooks~1endpoints~1{endpoint_id}~1deliveries/get/responses/500/content/application~1problem+json/example"]}},"schemaId":"schema_5","exampleIds":["paths/~1webhooks~1endpoints~1{endpoint_id}~1deliveries/get/responses/500/content/application~1problem+json/example"]}],"pointer":"/paths/~1webhooks~1endpoints~1{endpoint_id}~1deliveries/get/responses"}],"panels":[{"children":[{"kind":"response","responseCodes":[{"code":"200","schemaId":"schema_62","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_62"}}},{"code":"401","schemaId":"schema_8","exampleIds":["paths/~1webhooks~1endpoints~1{endpoint_id}~1deliveries/get/responses/401/content/application~1problem+json/examples/missing_token","paths/~1webhooks~1endpoints~1{endpoint_id}~1deliveries/get/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1webhooks~1endpoints~1{endpoint_id}~1deliveries/get/responses/401/content/application~1problem+json/examples/token_expired"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_8","exampleIds":["paths/~1webhooks~1endpoints~1{endpoint_id}~1deliveries/get/responses/401/content/application~1problem+json/examples/missing_token","paths/~1webhooks~1endpoints~1{endpoint_id}~1deliveries/get/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1webhooks~1endpoints~1{endpoint_id}~1deliveries/get/responses/401/content/application~1problem+json/examples/token_expired"]}}},{"code":"404","schemaId":"schema_63","exampleIds":["paths/~1webhooks~1endpoints~1{endpoint_id}~1deliveries/get/responses/404/content/application~1problem+json/example"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_63","exampleIds":["paths/~1webhooks~1endpoints~1{endpoint_id}~1deliveries/get/responses/404/content/application~1problem+json/example"]}}},{"code":"429","schemaId":"schema_3","exampleIds":["paths/~1webhooks~1endpoints~1{endpoint_id}~1deliveries/get/responses/429/content/application~1problem+json/example"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_3","exampleIds":["paths/~1webhooks~1endpoints~1{endpoint_id}~1deliveries/get/responses/429/content/application~1problem+json/example"]}}},{"code":"500","schemaId":"schema_5","exampleIds":["paths/~1webhooks~1endpoints~1{endpoint_id}~1deliveries/get/responses/500/content/application~1problem+json/example"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_5","exampleIds":["paths/~1webhooks~1endpoints~1{endpoint_id}~1deliveries/get/responses/500/content/application~1problem+json/example"]}}}],"examples":[]}]}]}]},"httpPath":"/webhooks/endpoints/{endpoint_id}/deliveries"},{"label":"Retry a webhook delivery","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/en-us/apis/openapi/webhooks/retrywebhookdelivery","routeSlug":"/en-us/apis/openapi/webhooks/retrywebhookdelivery","metadata":{"seo":{"title":"Retry a webhook delivery","description":"POST /webhooks/endpoints/{endpoint_id}/deliveries/{id}/retry"}},"content":{"contentType":"item","itemVariant":"httpItem","meta":{"sourceId":"retryWebhookDelivery","name":"Retry a webhook delivery","isWebhook":false,"pointer":"/paths/~1webhooks~1endpoints~1{endpoint_id}~1deliveries~1{id}~1retry/post","hasSamples":false},"children":[{"nodeType":"container","children":[{"nodeType":"header","level":2,"label":"Retry a webhook delivery","isWebhook":false,"showPageActions":true}],"panels":[]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Request","labelTranslationKey":"request","deepLinkSuffix":"request"},{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"tag","tag":"html","attributes":{"name":"div","attrs":{"className":"endpoint-url"}},"children":[{"$$mdtype":"Node","type":"tag","tag":"html","attributes":{"name":"span","attrs":{"className":"mb mb--post"}},"children":[{"$$mdtype":"Node","type":"text","attributes":{"content":"POST"},"children":[]}]},{"$$mdtype":"Node","type":"text","attributes":{"content":" /webhooks/endpoints/{endpoint_id}/deliveries/{id}/retry"},"children":[]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Reset a failed delivery and re-enqueue it. Only deliveries in "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"failed"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" status can be retried"},"children":[]}]}]}]},{"nodeType":"security","requirements":[{"schemes":[{"name":"bearerAuth","scopes":[],"type":"http","scheme":"bearer","bearerFormat":"JWT","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"JWT token obtained via OAuth2 Client Credentials. Send "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"POST /auth/token"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"with your credentials ("},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"client_id"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" and "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"client_secret"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":") in the"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Authorization: Basic base64(client_id:client_secret)"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" header to receive an"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"access token. Include the token in all requests:"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Authorization: Bearer <token>"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":". The token expires in 1 hour (3600s)."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Prefixes: "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"dinie_cs_live_"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" (production), "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"dinie_cs_test_"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" (sandbox)."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The returned token is prefixed with "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"dinie_at_"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]}]}]}]},{"nodeType":"item-content","variant":"path","label":"Path","labelTranslationKey":"path","parameters":[{"name":"endpoint_id","in":"path","schemaId":"schema_55","required":true},{"name":"id","in":"path","schemaId":"schema_61","required":true}],"pointer":"/paths/~1webhooks~1endpoints~1{endpoint_id}~1deliveries~1{id}~1retry/post/parameters"}],"panels":[{"children":[{"kind":"code-sample","source":{"kind":"code-sample","operationType":"http","method":"POST","path":"/webhooks/endpoints/{endpoint_id}/deliveries/{id}/retry","servers":[{"url":"/_mock/en-us/apis/openapi","description":"Mock server","isMockServer":true},{"url":"https://api.dinie.com/api/v3","description":"Production"},{"url":"https://api-dev.dinietech.io/api/v3","description":"Sandbox"}],"parameters":{"path":[{"name":"endpoint_id","in":"path","required":true,"example":"we_550e8400e29b41d4a716446655440000","schemaId":"components/schemas/WebhookEndpointId"},{"name":"id","in":"path","required":true,"example":"dlv_550e8400e29b41d4a716446655440000","schemaId":"components/schemas/WebhookDeliveryId"}],"query":[],"querystring":[],"header":[],"cookie":[]},"security":[{"schemes":[{"id":"bearerAuth","type":"http","scheme":"bearer","bearerFormat":"JWT"}],"scopes":[]}],"responseCodes":["200","401","404","409","429","500"],"pointer":"/webhooks/endpoints/{endpoint_id}/deliveries/{id}/retry","href":"webhooks/retrywebhookdelivery","openApiOperationId":"retryWebhookDelivery","summary":"Retry a webhook delivery"},"isWebhook":false,"hideReplay":false,"servers":[{"url":"/_mock/en-us/apis/openapi","description":"Mock server","isMockServer":true},{"url":"https://api.dinie.com/api/v3","description":"Production"},{"url":"https://api-dev.dinietech.io/api/v3","description":"Sandbox"}],"examples":[]}]}]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Responses","labelTranslationKey":"responses","deepLinkSuffix":"responses"},{"nodeType":"item-content","variant":"responses","responses":[{"code":"200","description":"Delivery reset and re-enqueued","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/WebhookDelivery"}},"schemaId":"components/schemas/WebhookDelivery"},{"code":"401","description":"Authentication failed","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_8","exampleIds":["paths/~1webhooks~1endpoints~1{endpoint_id}~1deliveries~1{id}~1retry/post/responses/401/content/application~1problem+json/examples/missing_token","paths/~1webhooks~1endpoints~1{endpoint_id}~1deliveries~1{id}~1retry/post/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1webhooks~1endpoints~1{endpoint_id}~1deliveries~1{id}~1retry/post/responses/401/content/application~1problem+json/examples/token_expired"]}},"schemaId":"schema_8","exampleIds":["paths/~1webhooks~1endpoints~1{endpoint_id}~1deliveries~1{id}~1retry/post/responses/401/content/application~1problem+json/examples/missing_token","paths/~1webhooks~1endpoints~1{endpoint_id}~1deliveries~1{id}~1retry/post/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1webhooks~1endpoints~1{endpoint_id}~1deliveries~1{id}~1retry/post/responses/401/content/application~1problem+json/examples/token_expired"]},{"code":"404","description":"Webhook endpoint or delivery not found","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_63","exampleIds":["paths/~1webhooks~1endpoints~1{endpoint_id}~1deliveries~1{id}~1retry/post/responses/404/content/application~1problem+json/example"]}},"schemaId":"schema_63","exampleIds":["paths/~1webhooks~1endpoints~1{endpoint_id}~1deliveries~1{id}~1retry/post/responses/404/content/application~1problem+json/example"]},{"code":"409","description":"Delivery not retryable","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_64","exampleIds":["paths/~1webhooks~1endpoints~1{endpoint_id}~1deliveries~1{id}~1retry/post/responses/409/content/application~1problem+json/example"]}},"schemaId":"schema_64","exampleIds":["paths/~1webhooks~1endpoints~1{endpoint_id}~1deliveries~1{id}~1retry/post/responses/409/content/application~1problem+json/example"]},{"code":"429","description":"Rate limit exceeded","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_3","exampleIds":["paths/~1webhooks~1endpoints~1{endpoint_id}~1deliveries~1{id}~1retry/post/responses/429/content/application~1problem+json/example"]}},"schemaId":"schema_3","exampleIds":["paths/~1webhooks~1endpoints~1{endpoint_id}~1deliveries~1{id}~1retry/post/responses/429/content/application~1problem+json/example"],"headers":{"Retry-After":{"schema":{"type":"integer"},"description":"Seconds until the rate limit resets"}},"headerSchemaId":"schema_4"},{"code":"500","description":"Internal server error","mediaType":"application/problem+json","mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_5","exampleIds":["paths/~1webhooks~1endpoints~1{endpoint_id}~1deliveries~1{id}~1retry/post/responses/500/content/application~1problem+json/example"]}},"schemaId":"schema_5","exampleIds":["paths/~1webhooks~1endpoints~1{endpoint_id}~1deliveries~1{id}~1retry/post/responses/500/content/application~1problem+json/example"]}],"pointer":"/paths/~1webhooks~1endpoints~1{endpoint_id}~1deliveries~1{id}~1retry/post/responses"}],"panels":[{"children":[{"kind":"response","responseCodes":[{"code":"200","schemaId":"components/schemas/WebhookDelivery","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/WebhookDelivery"}}},{"code":"401","schemaId":"schema_8","exampleIds":["paths/~1webhooks~1endpoints~1{endpoint_id}~1deliveries~1{id}~1retry/post/responses/401/content/application~1problem+json/examples/missing_token","paths/~1webhooks~1endpoints~1{endpoint_id}~1deliveries~1{id}~1retry/post/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1webhooks~1endpoints~1{endpoint_id}~1deliveries~1{id}~1retry/post/responses/401/content/application~1problem+json/examples/token_expired"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_8","exampleIds":["paths/~1webhooks~1endpoints~1{endpoint_id}~1deliveries~1{id}~1retry/post/responses/401/content/application~1problem+json/examples/missing_token","paths/~1webhooks~1endpoints~1{endpoint_id}~1deliveries~1{id}~1retry/post/responses/401/content/application~1problem+json/examples/invalid_token","paths/~1webhooks~1endpoints~1{endpoint_id}~1deliveries~1{id}~1retry/post/responses/401/content/application~1problem+json/examples/token_expired"]}}},{"code":"404","schemaId":"schema_63","exampleIds":["paths/~1webhooks~1endpoints~1{endpoint_id}~1deliveries~1{id}~1retry/post/responses/404/content/application~1problem+json/example"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_63","exampleIds":["paths/~1webhooks~1endpoints~1{endpoint_id}~1deliveries~1{id}~1retry/post/responses/404/content/application~1problem+json/example"]}}},{"code":"409","schemaId":"schema_64","exampleIds":["paths/~1webhooks~1endpoints~1{endpoint_id}~1deliveries~1{id}~1retry/post/responses/409/content/application~1problem+json/example"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_64","exampleIds":["paths/~1webhooks~1endpoints~1{endpoint_id}~1deliveries~1{id}~1retry/post/responses/409/content/application~1problem+json/example"]}}},{"code":"429","schemaId":"schema_3","exampleIds":["paths/~1webhooks~1endpoints~1{endpoint_id}~1deliveries~1{id}~1retry/post/responses/429/content/application~1problem+json/example"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_3","exampleIds":["paths/~1webhooks~1endpoints~1{endpoint_id}~1deliveries~1{id}~1retry/post/responses/429/content/application~1problem+json/example"]}}},{"code":"500","schemaId":"schema_5","exampleIds":["paths/~1webhooks~1endpoints~1{endpoint_id}~1deliveries~1{id}~1retry/post/responses/500/content/application~1problem+json/example"],"mediaTypes":["application/problem+json"],"mediaTypeContent":{"application/problem+json":{"schemaId":"schema_5","exampleIds":["paths/~1webhooks~1endpoints~1{endpoint_id}~1deliveries~1{id}~1retry/post/responses/500/content/application~1problem+json/example"]}}}],"examples":[]}]}]}]},"httpPath":"/webhooks/endpoints/{endpoint_id}/deliveries/{id}/retry"}],"content":{"contentType":"group","meta":{"name":"Webhooks"},"children":[{"nodeType":"container","children":[{"nodeType":"header","level":2,"label":"Webhooks","showPageActions":true},{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Manage the endpoints that receive event notifications."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Dinie follows the "},"children":[]},{"$$mdtype":"Node","type":"link","inline":true,"attributes":{"href":"https://www.standardwebhooks.com/"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Standard Webhooks"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" specification."},"children":[]}]}]}]}],"panels":[{"children":[{"kind":"group-items","title":"Operations","titleTranslationKey":"operations","items":[{"title":"/webhooks/endpoints","summary":"Create a webhook","prefix":{"name":"post","color":"post"},"badges":[],"link":"/webhooks/createwebhookendpoint","deprecated":false},{"title":"/webhooks/endpoints","summary":"List webhooks","prefix":{"name":"get","color":"get"},"badges":[],"link":"/webhooks/listwebhookendpoints","deprecated":false},{"title":"/webhooks/endpoints/{webhook_endpoint_id}","summary":"Get a webhook","prefix":{"name":"get","color":"get"},"badges":[],"link":"/webhooks/getwebhookendpoint","deprecated":false},{"title":"/webhooks/endpoints/{webhook_endpoint_id}","summary":"Update a webhook","prefix":{"name":"patch","color":"patch"},"badges":[],"link":"/webhooks/updatewebhookendpoint","deprecated":false},{"title":"/webhooks/endpoints/{webhook_endpoint_id}","summary":"Delete a webhook","prefix":{"name":"delete","color":"delete"},"badges":[],"link":"/webhooks/deletewebhookendpoint","deprecated":false},{"title":"/webhooks/endpoints/{webhook_endpoint_id}/rotate-secret","summary":"Rotate the secret","prefix":{"name":"post","color":"post"},"badges":[],"link":"/webhooks/rotatewebhooksecret","deprecated":false},{"title":"/webhooks/endpoints/{endpoint_id}/deliveries","summary":"List webhook deliveries","prefix":{"name":"get","color":"get"},"badges":[],"link":"/webhooks/listwebhookdeliveries","deprecated":false},{"title":"/webhooks/endpoints/{endpoint_id}/deliveries/{id}/retry","summary":"Retry a webhook delivery","prefix":{"name":"post","color":"post"},"badges":[],"link":"/webhooks/retrywebhookdelivery","deprecated":false}]}]}]}]}}],"store":{"schemaStore":{"components/schemas/CustomerId":{"id":"components/schemas/CustomerId","kind":"json-schema","title":"CustomerId","data":{"description":"Unique customer identifier","type":"string","pattern":"^cust_[0-9a-f]{32}$","example":"cust_550e8400e29b41d4a716446655440000"}},"components/schemas/CreditOfferId":{"id":"components/schemas/CreditOfferId","kind":"json-schema","title":"CreditOfferId","data":{"description":"Unique credit offer identifier","type":"string","pattern":"^co_[0-9a-f]{32}$","example":"co_550e8400e29b41d4a716446655440000"}},"components/schemas/LoanId":{"id":"components/schemas/LoanId","kind":"json-schema","title":"LoanId","data":{"description":"Unique loan identifier","type":"string","pattern":"^ln_[0-9a-f]{32}$","example":"ln_550e8400e29b41d4a716446655440000"}},"components/schemas/TransactionId":{"id":"components/schemas/TransactionId","kind":"json-schema","title":"TransactionId","data":{"description":"Unique transaction identifier","type":"string","pattern":"^tx_[0-9a-f]{32}$","example":"tx_550e8400e29b41d4a716446655440000"}},"components/schemas/SimulationId":{"id":"components/schemas/SimulationId","kind":"json-schema","title":"SimulationId","data":{"description":"Unique simulation identifier","type":"string","pattern":"^sim_[0-9a-f]{32}$","example":"sim_550e8400e29b41d4a716446655440000"}},"components/schemas/WebhookEndpointId":{"id":"components/schemas/WebhookEndpointId","kind":"json-schema","title":"WebhookEndpointId","data":{"description":"Unique webhook endpoint identifier","type":"string","pattern":"^we_[0-9a-f]{32}$","example":"we_550e8400e29b41d4a716446655440000"}},"components/schemas/WebhookDeliveryId":{"id":"components/schemas/WebhookDeliveryId","kind":"json-schema","title":"WebhookDeliveryId","data":{"description":"Unique identifier for a webhook delivery attempt","type":"string","pattern":"^dlv_[0-9a-f]{32}$","example":"dlv_550e8400e29b41d4a716446655440000"}},"components/schemas/ApiClientId":{"id":"components/schemas/ApiClientId","kind":"json-schema","title":"ApiClientId","data":{"description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Unique API credential identifier (includes the "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"live"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"/"},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"test"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" environment prefix)"},"children":[]}]}]}],"type":"string","pattern":"^dinie_ci_(live|test)_[A-Za-z0-9]+$","example":"dinie_ci_live_550e8400e29b41d4a71644"}},"components/schemas/BankAccountId":{"id":"components/schemas/BankAccountId","kind":"json-schema","title":"BankAccountId","data":{"description":"Unique bank account identifier","type":"string","pattern":"^ba_[0-9a-f]{32}$","example":"ba_550e8400e29b41d4a716446655440000"}},"components/schemas/Money":{"id":"components/schemas/Money","kind":"json-schema","title":"Money","data":{"type":"number","format":"double","description":"Monetary value in BRL","example":25000}},"components/schemas/TokenResponse":{"id":"components/schemas/TokenResponse","kind":"json-schema","title":"TokenResponse","data":{"description":"Response containing the JWT access token","type":"object","required":["access_token","token_type","expires_in"],"properties":{"access_token":{"type":"string","description":"JWT access token","example":"dinie_at_eyJhbGciOiJIUzI1NiJ9..."},"token_type":{"type":"string","description":"Type of the returned token","const":"bearer"},"expires_in":{"type":"integer","description":"Token lifetime in seconds","example":3600}}}},"components/schemas/CreateCredentialRequest":{"id":"components/schemas/CreateCredentialRequest","kind":"json-schema","title":"CreateCredentialRequest","data":{"description":"Data to create a new API credential","type":"object","required":["name"],"properties":{"name":{"type":"string","description":"Human-readable label for this key","example":"Production Key"},"expires_at":{"type":["integer","null"],"format":"int64","description":"Optional expiration date as Unix epoch seconds. Null means never expires.","example":1803945600}}}},"components/schemas/Credential":{"id":"components/schemas/Credential","kind":"json-schema","title":"Credential","data":{"description":"Partner API credential","type":"object","required":["id","client_id","name","status","last_used_at","expires_at","created_at","updated_at"],"properties":{"id":{"$ref":"#/components/schemas/ApiClientId","description":"Unique credential identifier"},"client_id":{"$ref":"#/components/schemas/ApiClientId","description":"Public credential identifier used for authentication"},"name":{"type":"string","description":"Human-readable credential label","example":"Production Key"},"status":{"type":"string","description":"Current credential state","enum":["active","revoked"],"x-enumDescriptions":{"active":"Active and functional credential","revoked":"Permanently revoked credential"}},"last_used_at":{"type":["integer","null"],"format":"int64","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Unix epoch seconds of last use, "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"null"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" if never used"},"children":[]}]}]}]},"expires_at":{"type":["integer","null"],"format":"int64","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Unix epoch seconds of expiration, "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"null"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" for no expiration"},"children":[]}]}]}]},"created_at":{"type":"integer","format":"int64","description":"Unix epoch seconds"},"updated_at":{"type":"integer","format":"int64","description":"Unix epoch seconds"}}}},"components/schemas/CredentialWithSecret":{"id":"components/schemas/CredentialWithSecret","kind":"json-schema","title":"CredentialWithSecret","data":{"description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Returned only at creation. The "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"client_secret"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" cannot be retrieved again."},"children":[]}]}]}],"allOf":[{"$ref":"#/components/schemas/Credential"},{"type":"object","required":["client_secret"],"properties":{"client_secret":{"type":"string","description":"Store securely -- shown only once","example":"dinie_cs_live_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"}}}]}},"components/schemas/CreateCustomerRequest":{"id":"components/schemas/CreateCustomerRequest","kind":"json-schema","title":"CreateCustomerRequest","data":{"description":"Data to register a new customer","type":"object","required":["email","phone","cpf","cnpj"],"properties":{"external_id":{"type":"string","description":"Partner external reference for this customer","example":"partner-ref-123"},"name":{"type":"string","description":"Customer's full name, auto-fetched from government records via CPF when not provided","example":"Joao Silva"},"email":{"type":"string","format":"email","example":"joao@example.com","description":"Contact email"},"phone":{"type":"string","pattern":"^\\+55\\d{10,11}$","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"E.164 format — Brazilian numbers only (+55 followed by 10 or 11 digits)"},"children":[]}]}]}],"example":"+5511999999999"},"cpf":{"type":"string","pattern":"^\\d{3}\\.\\d{3}\\.\\d{3}-\\d{2}$","description":"Customer CPF (required)","example":"123.456.789-00"},"cnpj":{"type":"string","pattern":"^\\d{2}\\.\\d{3}\\.\\d{3}/\\d{4}-\\d{2}$","description":"Company CNPJ","example":"12.345.678/0001-90"}}}},"components/schemas/UpdateCustomerRequest":{"id":"components/schemas/UpdateCustomerRequest","kind":"json-schema","title":"UpdateCustomerRequest","data":{"description":"Data to update an existing customer","type":"object","properties":{"email":{"type":"string","format":"email","description":"New contact email"},"phone":{"type":"string","pattern":"^\\+55\\d{10,11}$","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"New contact phone — E.164, Brazilian numbers only (+55 followed by 10 or 11 digits)"},"children":[]}]}]}]}}}},"components/schemas/Customer":{"id":"components/schemas/Customer","kind":"json-schema","title":"Customer","data":{"description":"Full representation of a registered customer","type":"object","required":["id","external_id","name","email","phone","cpf","cnpj","trading_name","status","created_at","updated_at"],"properties":{"id":{"$ref":"#/components/schemas/CustomerId","description":"Unique customer identifier"},"external_id":{"type":["string","null"],"example":"partner-ref-123","description":"Partner's reference ID for this customer"},"name":{"type":["string","null"],"example":"Joao Silva","description":"Legal name of the business owner"},"email":{"type":"string","format":"email","example":"joao@example.com","description":"Contact email"},"phone":{"type":"string","pattern":"^\\+[1-9]\\d{1,14}$","example":"+5511999999999","description":"Contact phone in E.164 format"},"cpf":{"type":"string","pattern":"^\\d{3}\\.\\d{3}\\.\\d{3}-\\d{2}$","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Customer CPF. Always formatted as "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"XXX.XXX.XXX-XX"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" in responses"},"children":[]}]}]}],"example":"123.456.789-00"},"cnpj":{"type":["string","null"],"pattern":"^\\d{2}\\.\\d{3}\\.\\d{3}/\\d{4}-\\d{2}$","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Company CNPJ. Always formatted as "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"XX.XXX.XXX/XXXX-XX"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" in responses"},"children":[]}]}]}],"example":"12.345.678/0001-90"},"trading_name":{"type":["string","null"],"example":"Loja do Joao","description":"Business trade name"},"status":{"type":"string","enum":["creating","pending_kyc","under_review","active","denied"],"x-enumDescriptions":{"creating":"Registration received, co-owner enrichment in progress","pending_kyc":"Customer registered, but KYC documents/biometrics not yet submitted or under review","under_review":"All required KYC items submitted; Dinie's compliance team is reviewing","active":"KYC approved; customer is eligible to receive credit offers","denied":"Permanently blocked (fraud, closed company, or other terminal condition)"},"description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Lifecycle state: "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"creating"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"pending_kyc"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"under_review"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"active"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"denied"},"children":[]}]}]}]},"kyc":{"type":"array","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"KYC requirements array. Omitted during "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"creating"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" status. Present from "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"pending_kyc"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" onward"},"children":[]}]}]}],"items":{"$ref":"#/components/schemas/KycRequirement"}},"created_at":{"type":"integer","format":"int64","description":"When this resource was created (Unix epoch seconds)"},"updated_at":{"type":"integer","format":"int64","description":"When this resource was last modified (Unix epoch seconds)"}}}},"components/schemas/KycRequirement":{"id":"components/schemas/KycRequirement","kind":"json-schema","title":"KycRequirement","data":{"oneOf":[{"$ref":"#/components/schemas/IdentityRequirement"},{"$ref":"#/components/schemas/SelfieRequirement"},{"$ref":"#/components/schemas/ProofOfAddressRequirement"},{"$ref":"#/components/schemas/CompanyDocumentRequirement"},{"$ref":"#/components/schemas/EiMeiDocumentsRequirement"},{"$ref":"#/components/schemas/IncomeStatementRequirement"},{"$ref":"#/components/schemas/ArticlesOfAssociationRequirement"},{"$ref":"#/components/schemas/EireliIncorporationStatementRequirement"},{"$ref":"#/components/schemas/EmailRequirement"}],"discriminator":{"propertyName":"requirement_type","mapping":{"identity":"#/components/schemas/IdentityRequirement","selfie":"#/components/schemas/SelfieRequirement","proof_of_address":"#/components/schemas/ProofOfAddressRequirement","company_document":"#/components/schemas/CompanyDocumentRequirement","ei_mei_documents":"#/components/schemas/EiMeiDocumentsRequirement","income_statement":"#/components/schemas/IncomeStatementRequirement","articles_of_association":"#/components/schemas/ArticlesOfAssociationRequirement","eireli_incorporation_statement":"#/components/schemas/EireliIncorporationStatementRequirement","email":"#/components/schemas/EmailRequirement"}},"description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"A KYC requirement — something that needs to be verified (e.g., identity, address). Discriminated by "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"requirement_type"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":". Person-specific requirements include a "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"subject"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" field; company-wide requirements do not."},"children":[]}]}]}]}},"components/schemas/KycSubject":{"id":"components/schemas/KycSubject","kind":"json-schema","title":"KycSubject","data":{"type":"object","required":["id","name","subject_type"],"properties":{"id":{"type":"string","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Opaque identifier for this subject (used in "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"requirement_id"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" suffix and document uploads)."},"children":[]}]}]}],"example":"003XXXXXXXXXXXXXXX"},"name":{"type":"string","description":"Human-readable name of the subject.","example":"Joao Silva"},"subject_type":{"type":"string","enum":["applicant","co_owner"],"description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"applicant"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" — the customer themselves. "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"co_owner"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" — a director/shareholder of the company."},"children":[]}]}]}],"x-enumDescriptions":{"applicant":"The customer themselves (applicant)","co_owner":"Director or shareholder of the company"}}},"description":"Identifies who the requirement is about (a person or company co-owner)."}},"components/schemas/IdentityRequirement":{"id":"components/schemas/IdentityRequirement","kind":"json-schema","title":"IdentityRequirement","data":{"type":"object","required":["requirement_type","requirement_id","label","mandatory","subject"],"properties":{"requirement_type":{"type":"string","description":"KYC requirement type discriminator","const":"identity"},"requirement_id":{"type":"string","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Format: "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"identity_{subject_id}"},"children":[]}]}]}],"example":"identity_003XXXXXXXXXXXXXXX"},"label":{"type":"string","description":"Human-readable label.","example":"Documento de identidade"},"mandatory":{"type":"boolean","description":"Whether this requirement must be fulfilled"},"subject":{"$ref":"#/components/schemas/KycSubject","description":"Person associated with this requirement"},"submitted":{"oneOf":[{"$ref":"#/components/schemas/IdentityCnhSubmitted"},{"$ref":"#/components/schemas/IdentityRgSubmitted"}],"description":"Evidence submitted for this requirement. Absent if nothing submitted yet"}},"description":"Identity document requirement (CNH or RG). Always person-specific."}},"components/schemas/IdentityCnhSubmitted":{"id":"components/schemas/IdentityCnhSubmitted","kind":"json-schema","title":"IdentityCnhSubmitted","data":{"type":"object","required":["evidence_type","attachments","review_status","review_reason"],"properties":{"evidence_type":{"type":"string","description":"Type of submitted evidence","const":"cnh"},"attachments":{"oneOf":[{"$ref":"#/components/schemas/CnhPhysicalAttachmentSet"},{"$ref":"#/components/schemas/CnhDigitalAttachmentSet"}],"description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Physical CNH (front + back photos) or digital CNH (single PDF)"},"children":[]}]}]}]},"review_status":{"$ref":"#/components/schemas/ReviewStatus","description":"Document review status"},"review_reason":{"$ref":"#/components/schemas/ReviewReason","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Rejection reason, "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"null"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" if approved"},"children":[]}]}]}]}},"description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"CNH evidence — either physical (front + back) or digital (single PDF)."},"children":[]}]}]}]}},"components/schemas/CnhPhysicalAttachmentSet":{"id":"components/schemas/CnhPhysicalAttachmentSet","kind":"json-schema","title":"CnhPhysicalAttachmentSet","data":{"type":"array","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Physical CNH — front and back photos."},"children":[]}]}]}],"minItems":2,"maxItems":2,"items":{"type":"object","required":["attachment_type","submitted"],"properties":{"attachment_type":{"type":"string","description":"Physical CNH attachment type","enum":["front","back"],"x-enumDescriptions":{"front":"Front of the document","back":"Back of the document"}},"submitted":{"type":"boolean","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"true"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" if this slot has been filled"},"children":[]}]}]}]}}}}},"components/schemas/CnhDigitalAttachmentSet":{"id":"components/schemas/CnhDigitalAttachmentSet","kind":"json-schema","title":"CnhDigitalAttachmentSet","data":{"type":"array","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Digital CNH — single PDF file."},"children":[]}]}]}],"minItems":1,"maxItems":1,"items":{"type":"object","required":["attachment_type","submitted"],"properties":{"attachment_type":{"type":"string","description":"Digital CNH attachment type","const":"file"},"submitted":{"type":"boolean","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"true"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" if this slot has been filled"},"children":[]}]}]}]}}}}},"components/schemas/IdentityRgSubmitted":{"id":"components/schemas/IdentityRgSubmitted","kind":"json-schema","title":"IdentityRgSubmitted","data":{"type":"object","required":["evidence_type","attachments","review_status","review_reason"],"properties":{"evidence_type":{"type":"string","description":"Type of submitted evidence","const":"rg"},"attachments":{"type":"array","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"RG — front and back photos"},"children":[]}]}]}],"minItems":2,"maxItems":2,"items":{"type":"object","required":["attachment_type","submitted"],"properties":{"attachment_type":{"type":"string","description":"RG attachment type","enum":["front","back"],"x-enumDescriptions":{"front":"Front of the document","back":"Back of the document"}},"submitted":{"type":"boolean","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"true"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" if this slot has been filled"},"children":[]}]}]}]}}}},"review_status":{"$ref":"#/components/schemas/ReviewStatus","description":"Document review status"},"review_reason":{"$ref":"#/components/schemas/ReviewReason","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Rejection reason, "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"null"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" if approved"},"children":[]}]}]}]}},"description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"RG evidence — front and back photos."},"children":[]}]}]}]}},"components/schemas/SelfieRequirement":{"id":"components/schemas/SelfieRequirement","kind":"json-schema","title":"SelfieRequirement","data":{"type":"object","required":["requirement_type","requirement_id","label","mandatory","subject"],"properties":{"requirement_type":{"type":"string","description":"KYC requirement type discriminator","const":"selfie"},"requirement_id":{"type":"string","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Format: "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"selfie_{subject_id}"},"children":[]}]}]}],"example":"selfie_003XXXXXXXXXXXXXXX"},"label":{"type":"string","description":"Human-readable requirement label","example":"Selfie"},"mandatory":{"type":"boolean","description":"Whether this requirement is mandatory"},"subject":{"$ref":"#/components/schemas/KycSubject","description":"Person associated with this requirement"},"submitted":{"$ref":"#/components/schemas/SelfieSubmitted","description":"Submitted evidence and review status"}},"description":"Selfie requirement. Always person-specific."}},"components/schemas/SelfieSubmitted":{"id":"components/schemas/SelfieSubmitted","kind":"json-schema","title":"SelfieSubmitted","data":{"type":"object","required":["evidence_type","attachments","review_status","review_reason"],"properties":{"evidence_type":{"type":"string","description":"Type of submitted evidence","const":"selfie"},"attachments":{"type":"array","description":"Submitted selfie photo","minItems":1,"maxItems":1,"items":{"type":"object","required":["attachment_type","submitted"],"properties":{"attachment_type":{"type":"string","description":"Type of submitted attachment","const":"photo"},"submitted":{"type":"boolean","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"true"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" if this slot has been filled"},"children":[]}]}]}]}}}},"review_status":{"$ref":"#/components/schemas/ReviewStatus","description":"Document review state"},"review_reason":{"$ref":"#/components/schemas/ReviewReason","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Rejection reason, "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"null"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" if approved"},"children":[]}]}]}]}},"description":"Selfie evidence."}},"components/schemas/ProofOfAddressRequirement":{"id":"components/schemas/ProofOfAddressRequirement","kind":"json-schema","title":"ProofOfAddressRequirement","data":{"type":"object","required":["requirement_type","requirement_id","label","mandatory","subject"],"properties":{"requirement_type":{"type":"string","description":"KYC requirement type discriminator","const":"proof_of_address"},"requirement_id":{"type":"string","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Format: "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"proof_of_address_{subject_id}"},"children":[]}]}]}],"example":"proof_of_address_003XXXXXXXXXXXXXXX"},"label":{"type":"string","description":"Human-readable requirement label","example":"Comprovante de endereço"},"mandatory":{"type":"boolean","description":"Whether this requirement is mandatory"},"subject":{"$ref":"#/components/schemas/KycSubject","description":"Person associated with this requirement"},"submitted":{"$ref":"#/components/schemas/ProofOfAddressSubmitted","description":"Submitted evidence and review status"}},"description":"Proof of address requirement. Always person-specific."}},"components/schemas/ProofOfAddressSubmitted":{"id":"components/schemas/ProofOfAddressSubmitted","kind":"json-schema","title":"ProofOfAddressSubmitted","data":{"type":"object","required":["evidence_type","attachments","review_status","review_reason"],"properties":{"evidence_type":{"type":"string","description":"Type of submitted evidence","const":"proof_of_address"},"attachments":{"type":"array","description":"Submitted proof of address file","minItems":1,"maxItems":1,"items":{"type":"object","required":["attachment_type","submitted"],"properties":{"attachment_type":{"type":"string","description":"Type of submitted attachment","const":"file"},"submitted":{"type":"boolean","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"true"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" if this slot has been filled"},"children":[]}]}]}]}}}},"review_status":{"$ref":"#/components/schemas/ReviewStatus","description":"Document review state"},"review_reason":{"$ref":"#/components/schemas/ReviewReason","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Rejection reason, "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"null"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" if approved"},"children":[]}]}]}]}},"description":"Proof of address evidence."}},"components/schemas/CompanyDocumentRequirement":{"id":"components/schemas/CompanyDocumentRequirement","kind":"json-schema","title":"CompanyDocumentRequirement","data":{"type":"object","required":["requirement_type","requirement_id","label","mandatory"],"properties":{"requirement_type":{"type":"string","description":"KYC requirement type discriminator","const":"company_document"},"requirement_id":{"type":"string","description":"Fixed requirement identifier","example":"company_document_001XXXXXXXXXXXXXXX"},"label":{"type":"string","description":"Human-readable requirement label","example":"Documento da empresa"},"mandatory":{"type":"boolean","description":"Whether this requirement is mandatory"},"submitted":{"$ref":"#/components/schemas/CompanyDocumentSubmitted","description":"Submitted evidence and review status"}},"description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Company document requirement (CCMEI). No subject — applies to the customer's company."},"children":[]}]}]}]}},"components/schemas/CompanyDocumentSubmitted":{"id":"components/schemas/CompanyDocumentSubmitted","kind":"json-schema","title":"CompanyDocumentSubmitted","data":{"type":"object","required":["evidence_type","attachments","review_status","review_reason"],"properties":{"evidence_type":{"type":"string","description":"Type of submitted evidence","const":"ccmei"},"attachments":{"type":"array","description":"Submitted CCMEI file","minItems":1,"maxItems":1,"items":{"type":"object","required":["attachment_type","submitted"],"properties":{"attachment_type":{"type":"string","description":"Type of submitted attachment","const":"file"},"submitted":{"type":"boolean","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"true"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" if this slot has been filled"},"children":[]}]}]}]}}}},"review_status":{"$ref":"#/components/schemas/ReviewStatus","description":"Document review state"},"review_reason":{"$ref":"#/components/schemas/ReviewReason","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Rejection reason, "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"null"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" if approved"},"children":[]}]}]}]}},"description":"Company document evidence."}},"components/schemas/EiMeiDocumentsRequirement":{"id":"components/schemas/EiMeiDocumentsRequirement","kind":"json-schema","title":"EiMeiDocumentsRequirement","data":{"type":"object","required":["requirement_type","requirement_id","label","mandatory"],"properties":{"requirement_type":{"type":"string","description":"KYC requirement type discriminator","const":"ei_mei_documents"},"requirement_id":{"type":"string","description":"Fixed requirement identifier","const":"ei_mei_documents"},"label":{"type":"string","description":"Human-readable requirement label","example":"Documentos de EI/MEI"},"mandatory":{"type":"boolean","description":"Whether this requirement is mandatory"},"submitted":{"$ref":"#/components/schemas/EiMeiDocumentsSubmitted","description":"Submitted evidence and review status"}},"description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"EI/MEI documents requirement. Both attachments (EI registration + CCMEI) are required. No subject."},"children":[]}]}]}]}},"components/schemas/EiMeiDocumentsSubmitted":{"id":"components/schemas/EiMeiDocumentsSubmitted","kind":"json-schema","title":"EiMeiDocumentsSubmitted","data":{"type":"object","required":["evidence_type","attachments","review_status","review_reason"],"properties":{"evidence_type":{"type":"string","description":"Type of submitted evidence","const":"ei_mei"},"attachments":{"type":"array","description":"Both attachments are required","minItems":2,"maxItems":2,"items":{"type":"object","required":["attachment_type","submitted"],"properties":{"attachment_type":{"type":"string","description":"Type of submitted attachment","enum":["ei_registration_requirement","ccmei"],"x-enumDescriptions":{"ei_registration_requirement":"EI registration requirement document","ccmei":"MEI Registration Certificate (CCMEI)"}},"submitted":{"type":"boolean","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"true"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" if this slot has been filled"},"children":[]}]}]}]}}}},"review_status":{"$ref":"#/components/schemas/ReviewStatus","description":"Document review status"},"review_reason":{"$ref":"#/components/schemas/ReviewReason","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Rejection reason, "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"null"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" if approved"},"children":[]}]}]}]}},"description":"EI/MEI evidence."}},"components/schemas/IncomeStatementRequirement":{"id":"components/schemas/IncomeStatementRequirement","kind":"json-schema","title":"IncomeStatementRequirement","data":{"type":"object","required":["requirement_type","requirement_id","label","mandatory"],"properties":{"requirement_type":{"type":"string","description":"KYC requirement type discriminator","const":"income_statement"},"requirement_id":{"type":"string","description":"Fixed requirement identifier","const":"income_statement"},"label":{"type":"string","description":"Human-readable requirement label","example":"Declaração de faturamento"},"mandatory":{"type":"boolean","description":"Whether this requirement is mandatory"},"submitted":{"$ref":"#/components/schemas/IncomeStatementSubmitted","description":"Submitted evidence and review status"}},"description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Income statement requirement. No subject — applies to the customer's company."},"children":[]}]}]}]}},"components/schemas/IncomeStatementSubmitted":{"id":"components/schemas/IncomeStatementSubmitted","kind":"json-schema","title":"IncomeStatementSubmitted","data":{"type":"object","required":["evidence_type","attachments","review_status","review_reason"],"properties":{"evidence_type":{"type":"string","description":"Type of submitted evidence","const":"income_statement"},"attachments":{"type":"array","description":"Submitted revenue statement file","minItems":1,"maxItems":1,"items":{"type":"object","required":["attachment_type","submitted"],"properties":{"attachment_type":{"type":"string","description":"Type of submitted attachment","const":"file"},"submitted":{"type":"boolean","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"true"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" if this slot has been filled"},"children":[]}]}]}]}}}},"review_status":{"$ref":"#/components/schemas/ReviewStatus","description":"Document review state"},"review_reason":{"$ref":"#/components/schemas/ReviewReason","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Rejection reason, "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"null"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" if approved"},"children":[]}]}]}]}},"description":"Income statement evidence."}},"components/schemas/ArticlesOfAssociationRequirement":{"id":"components/schemas/ArticlesOfAssociationRequirement","kind":"json-schema","title":"ArticlesOfAssociationRequirement","data":{"type":"object","required":["requirement_type","requirement_id","label","mandatory"],"properties":{"requirement_type":{"type":"string","description":"KYC requirement type discriminator","const":"articles_of_association"},"requirement_id":{"type":"string","description":"Fixed requirement identifier","const":"articles_of_association"},"label":{"type":"string","description":"Human-readable requirement label","example":"Contrato social"},"mandatory":{"type":"boolean","description":"Whether this requirement is mandatory"},"submitted":{"$ref":"#/components/schemas/ArticlesOfAssociationSubmitted","description":"Submitted evidence and review status"}},"description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Articles of association requirement. No subject — applies to the customer's company."},"children":[]}]}]}]}},"components/schemas/ArticlesOfAssociationSubmitted":{"id":"components/schemas/ArticlesOfAssociationSubmitted","kind":"json-schema","title":"ArticlesOfAssociationSubmitted","data":{"type":"object","required":["evidence_type","attachments","review_status","review_reason"],"properties":{"evidence_type":{"type":"string","description":"Type of submitted evidence","const":"articles_of_association"},"attachments":{"type":"array","description":"Submitted articles of association file","minItems":1,"maxItems":1,"items":{"type":"object","required":["attachment_type","submitted"],"properties":{"attachment_type":{"type":"string","description":"Type of submitted attachment","const":"file"},"submitted":{"type":"boolean","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"true"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" if this slot has been filled"},"children":[]}]}]}]}}}},"review_status":{"$ref":"#/components/schemas/ReviewStatus","description":"Document review state"},"review_reason":{"$ref":"#/components/schemas/ReviewReason","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Rejection reason, "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"null"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" if approved"},"children":[]}]}]}]}},"description":"Articles of association evidence."}},"components/schemas/EireliIncorporationStatementRequirement":{"id":"components/schemas/EireliIncorporationStatementRequirement","kind":"json-schema","title":"EireliIncorporationStatementRequirement","data":{"type":"object","required":["requirement_type","requirement_id","label","mandatory"],"properties":{"requirement_type":{"type":"string","description":"KYC requirement type discriminator","const":"eireli_incorporation_statement"},"requirement_id":{"type":"string","description":"Fixed requirement identifier","const":"eireli_incorporation_statement"},"label":{"type":"string","description":"Human-readable requirement label","example":"Ato constitutivo de EIRELI"},"mandatory":{"type":"boolean","description":"Whether this requirement is mandatory"},"submitted":{"$ref":"#/components/schemas/EireliIncorporationStatementSubmitted","description":"Submitted evidence and review status"}},"description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"EIRELI incorporation statement requirement. No subject — applies to the customer's company."},"children":[]}]}]}]}},"components/schemas/EireliIncorporationStatementSubmitted":{"id":"components/schemas/EireliIncorporationStatementSubmitted","kind":"json-schema","title":"EireliIncorporationStatementSubmitted","data":{"type":"object","required":["evidence_type","attachments","review_status","review_reason"],"properties":{"evidence_type":{"type":"string","description":"Type of submitted evidence","const":"eireli_incorporation_statement"},"attachments":{"type":"array","description":"Submitted EIRELI incorporation statement file","minItems":1,"maxItems":1,"items":{"type":"object","required":["attachment_type","submitted"],"properties":{"attachment_type":{"type":"string","description":"Type of submitted attachment","const":"file"},"submitted":{"type":"boolean","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"true"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" if this slot has been filled"},"children":[]}]}]}]}}}},"review_status":{"$ref":"#/components/schemas/ReviewStatus","description":"Document review state"},"review_reason":{"$ref":"#/components/schemas/ReviewReason","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Rejection reason, "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"null"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" if approved"},"children":[]}]}]}]}},"description":"EIRELI incorporation statement evidence."}},"components/schemas/EmailRequirement":{"id":"components/schemas/EmailRequirement","kind":"json-schema","title":"EmailRequirement","data":{"type":"object","required":["requirement_type","requirement_id","label","mandatory","subject"],"properties":{"requirement_type":{"type":"string","description":"KYC requirement type discriminator","const":"email"},"requirement_id":{"type":"string","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Format: "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"email_{subject_id}"},"children":[]}]}]}],"example":"email_003XXXXXXXXXXXXXXX"},"label":{"type":"string","description":"Human-readable requirement label","example":"Email do co-titular para assinatura da CCB"},"mandatory":{"type":"boolean","description":"Whether this requirement is mandatory"},"subject":{"$ref":"#/components/schemas/KycSubject","description":"Person associated with this requirement"},"submitted":{"$ref":"#/components/schemas/EmailSubmitted","description":"Submitted evidence and review status"}},"description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Email verification requirement. Data-only — no evidence or attachments. Corrections are made via "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"PATCH /customers/{id}"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]}]}},"components/schemas/EmailSubmitted":{"id":"components/schemas/EmailSubmitted","kind":"json-schema","title":"EmailSubmitted","data":{"type":"object","required":["evidence_type","attachments","review_status","review_reason"],"properties":{"evidence_type":{"type":"string","description":"Type of submitted evidence","const":"email"},"attachments":{"type":"array","description":"Email submitted for CCB contract signing","minItems":1,"maxItems":1,"items":{"type":"object","required":["attachment_type","submitted"],"properties":{"attachment_type":{"type":"string","description":"Type of submitted attachment","const":"email"},"submitted":{"type":"boolean","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"true"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" if this slot has been filled"},"children":[]}]}]}]}}}},"review_status":{"$ref":"#/components/schemas/ReviewStatus","description":"Document review status"},"review_reason":{"$ref":"#/components/schemas/ReviewReason","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Rejection reason, "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"null"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" if approved"},"children":[]}]}]}]}},"description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Email verification state. No evidence_type or attachments — this is a data-field validation."},"children":[]}]}]}]}},"components/schemas/ReviewStatus":{"id":"components/schemas/ReviewStatus","kind":"json-schema","title":"ReviewStatus","data":{"type":"string","enum":["pending","accepted","rejected"],"description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"pending"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" — awaiting review. "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"accepted"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" — approved. "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"rejected"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" — partner must resubmit."},"children":[]}]}]}]}},"components/schemas/ReviewReason":{"id":"components/schemas/ReviewReason","kind":"json-schema","title":"ReviewReason","data":{"type":["string","null"],"description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Explanation when "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"review_status"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" is "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"rejected"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":". "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"null"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" otherwise."},"children":[]}]}]}]}},"components/schemas/KycAttachmentResponse":{"id":"components/schemas/KycAttachmentResponse","kind":"json-schema","title":"KycAttachmentResponse","data":{"type":"object","required":["attachment_type","submitted"],"properties":{"attachment_type":{"type":"string","description":"Echoes the slot just submitted","example":"front"},"submitted":{"type":"boolean","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Always "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"true"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" on a successful upload — confirms the slot was filled"},"children":[]}]}]}]}},"description":"Confirmation that a KYC attachment slot was filled. Read the customer endpoint to see the full requirement state."}},"components/schemas/Bank":{"id":"components/schemas/Bank","kind":"json-schema","title":"Bank","data":{"type":"object","required":["id","name","display_name"],"properties":{"id":{"type":"string","example":"001","description":"Bank COMPE code"},"name":{"type":"string","example":"Banco do Brasil","description":"Bank name"},"display_name":{"type":"string","example":"001 - Banco do Brasil","description":"Code and name formatted for display"}},"description":"A bank available for customer bank account submission"}},"components/schemas/CustomerBankAccountRequest":{"id":"components/schemas/CustomerBankAccountRequest","kind":"json-schema","title":"CustomerBankAccountRequest","data":{"type":"object","required":["bank_id","kind","branch","number","digit"],"properties":{"bank_id":{"type":"string","description":"Bank COMPE code; zero-padded to 3 digits when stored","pattern":"^\\d{1,3}$","example":"001"},"kind":{"type":"string","enum":["checking","saving","payment"],"description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Account type: "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"checking"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"saving"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"payment"},"children":[]}]}]}]},"branch":{"type":"string","description":"Branch number without the check digit; zero-padded to 4 digits when stored","pattern":"^\\d{1,4}$","example":"0001"},"number":{"type":"string","pattern":"^\\d+$","example":"1234567","description":"Account number"},"digit":{"type":"string","description":"Account check digit (a single digit, or \"X\" for some banks)","pattern":"^[0-9Xx]$","example":"0"}},"description":"Customer disbursement bank account data"}},"components/schemas/CustomerBankAccount":{"id":"components/schemas/CustomerBankAccount","kind":"json-schema","title":"CustomerBankAccount","data":{"allOf":[{"$ref":"#/components/schemas/CustomerBankAccountRequest"},{"type":"object","required":["id","bank_name","updated_at"],"properties":{"id":{"$ref":"#/components/schemas/BankAccountId","description":"Unique bank account identifier"},"bank_name":{"type":"string","description":"Bank name"},"updated_at":{"type":"integer","format":"int64","description":"Unix epoch in seconds"}}}],"description":"Disbursement bank account linked to the customer"}},"components/schemas/KycUploadCnh":{"id":"components/schemas/KycUploadCnh","kind":"json-schema","title":"KycUploadCnh","data":{"type":"object","required":["evidence_type","requirement_id","attachment_type","file"],"properties":{"evidence_type":{"type":"string","description":"Evidence type to submit","const":"cnh"},"requirement_id":{"type":"string","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Format: "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"identity_{subject_id}"},"children":[]}]}]}],"example":"identity_003XXXXXXXXXXXXXXX"},"attachment_type":{"type":"string","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Physical CNH: "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"front"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" and "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"back"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":". Digital CNH: "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"file"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" (single PDF)"},"children":[]}]}]}],"enum":["front","back","file"],"x-enumDescriptions":{"front":"Document front","back":"Document back","file":"PDF file"}},"file":{"type":"string","format":"binary","description":"Binary file upload (JPEG, PNG for physical; PDF for digital)"}},"description":"Upload a CNH (driver's license) attachment"}},"components/schemas/KycUploadRg":{"id":"components/schemas/KycUploadRg","kind":"json-schema","title":"KycUploadRg","data":{"type":"object","required":["evidence_type","requirement_id","attachment_type","file"],"properties":{"evidence_type":{"type":"string","description":"Evidence type to submit","const":"rg"},"requirement_id":{"type":"string","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Format: "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"identity_{subject_id}"},"children":[]}]}]}],"example":"identity_003XXXXXXXXXXXXXXX"},"attachment_type":{"type":"string","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"RG: "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"front"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" and "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"back"},"children":[]}]}]}],"enum":["front","back"],"x-enumDescriptions":{"front":"Document front","back":"Document back"}},"file":{"type":"string","format":"binary","description":"Binary file upload (JPEG, PNG)"}},"description":"Upload an RG (identity card) attachment"}},"components/schemas/KycUploadSelfie":{"id":"components/schemas/KycUploadSelfie","kind":"json-schema","title":"KycUploadSelfie","data":{"type":"object","required":["evidence_type","requirement_id","attachment_type","file"],"properties":{"evidence_type":{"type":"string","description":"Evidence type to submit","const":"selfie"},"requirement_id":{"type":"string","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Format: "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"selfie_{subject_id}"},"children":[]}]}]}],"example":"selfie_003XXXXXXXXXXXXXXX"},"attachment_type":{"type":"string","description":"Attachment type","const":"photo"},"file":{"type":"string","format":"binary","description":"Binary file upload (JPEG, PNG)"}},"description":"Upload a selfie photo for biometric validation"}},"components/schemas/KycUploadProofOfAddress":{"id":"components/schemas/KycUploadProofOfAddress","kind":"json-schema","title":"KycUploadProofOfAddress","data":{"type":"object","required":["evidence_type","requirement_id","attachment_type","file"],"properties":{"evidence_type":{"type":"string","description":"Evidence type to submit","const":"proof_of_address"},"requirement_id":{"type":"string","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Format: "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"proof_of_address_{subject_id}"},"children":[]}]}]}],"example":"proof_of_address_003XXXXXXXXXXXXXXX"},"attachment_type":{"type":"string","description":"Attachment type","const":"file"},"file":{"type":"string","format":"binary","description":"Binary file upload (PDF, JPEG, PNG)"}},"description":"Upload a proof of address document"}},"components/schemas/KycUploadCcmei":{"id":"components/schemas/KycUploadCcmei","kind":"json-schema","title":"KycUploadCcmei","data":{"type":"object","required":["evidence_type","requirement_id","attachment_type","file"],"properties":{"evidence_type":{"type":"string","description":"Evidence type to submit","const":"ccmei"},"requirement_id":{"type":"string","description":"Company document requirement identifier","pattern":"^company_document_.+$","example":"company_document_001XXXXXXXXXXXXXXX"},"attachment_type":{"type":"string","description":"Attachment type","const":"file"},"file":{"type":"string","format":"binary","description":"Binary file upload (PDF, JPEG, PNG)"}},"description":"Upload a CCMEI (Individual Micro-Entrepreneur Status Certificate)"}},"components/schemas/KycUploadEiMei":{"id":"components/schemas/KycUploadEiMei","kind":"json-schema","title":"KycUploadEiMei","data":{"type":"object","required":["evidence_type","requirement_id","attachment_type","file"],"properties":{"evidence_type":{"type":"string","description":"Evidence type to submit","const":"ei_mei"},"requirement_id":{"type":"string","description":"EI/MEI document requirement identifier","pattern":"^ei_mei_documents_.+$","example":"ei_mei_documents_001XXXXXXXXXXXXXXX"},"attachment_type":{"type":"string","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Two documents required: "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"ei_registration_requirement"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" and "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"ccmei"},"children":[]}]}]}],"enum":["ei_registration_requirement","ccmei"],"x-enumDescriptions":{"ei_registration_requirement":"EI registration requirement form","ccmei":"MEI status certificate (CCMEI)"}},"file":{"type":"string","format":"binary","description":"Binary file upload (PDF, JPEG, PNG)"}},"description":"Upload an EI/MEI document (registration requirement or CCMEI)"}},"components/schemas/KycUploadIncomeStatement":{"id":"components/schemas/KycUploadIncomeStatement","kind":"json-schema","title":"KycUploadIncomeStatement","data":{"type":"object","required":["evidence_type","requirement_id","attachment_type","file"],"properties":{"evidence_type":{"type":"string","description":"Evidence type to submit","const":"income_statement"},"requirement_id":{"type":"string","description":"Revenue statement requirement identifier","pattern":"^income_statement_.+$","example":"income_statement_001XXXXXXXXXXXXXXX"},"attachment_type":{"type":"string","description":"Attachment type","const":"file"},"file":{"type":"string","format":"binary","description":"Binary file upload (PDF, JPEG, PNG)"}},"description":"Upload an income statement (DRE)"}},"components/schemas/KycUploadArticlesOfAssociation":{"id":"components/schemas/KycUploadArticlesOfAssociation","kind":"json-schema","title":"KycUploadArticlesOfAssociation","data":{"type":"object","required":["evidence_type","requirement_id","attachment_type","file"],"properties":{"evidence_type":{"type":"string","description":"Evidence type to submit","const":"articles_of_association"},"requirement_id":{"type":"string","description":"Articles of association requirement identifier","pattern":"^articles_of_association_.+$","example":"articles_of_association_001XXXXXXXXXXXXXXX"},"attachment_type":{"type":"string","description":"Attachment type","const":"file"},"file":{"type":"string","format":"binary","description":"Binary file upload (PDF, JPEG, PNG)"}},"description":"Upload articles of association (contrato social)"}},"components/schemas/KycUploadEireliIncorporation":{"id":"components/schemas/KycUploadEireliIncorporation","kind":"json-schema","title":"KycUploadEireliIncorporation","data":{"type":"object","required":["evidence_type","requirement_id","attachment_type","file"],"properties":{"evidence_type":{"type":"string","description":"Evidence type to submit","const":"eireli_incorporation_statement"},"requirement_id":{"type":"string","description":"EIRELI incorporation statement requirement identifier","pattern":"^eireli_incorporation_statement_.+$","example":"eireli_incorporation_statement_001XXXXXXXXXXXXXXX"},"attachment_type":{"type":"string","description":"Attachment type","const":"file"},"file":{"type":"string","format":"binary","description":"Binary file upload (PDF, JPEG, PNG)"}},"description":"Upload an EIRELI incorporation statement (ato constitutivo)"}},"components/schemas/KycUploadEmail":{"id":"components/schemas/KycUploadEmail","kind":"json-schema","title":"KycUploadEmail","data":{"type":"object","required":["evidence_type","requirement_id","attachment_type","value"],"properties":{"evidence_type":{"type":"string","description":"Evidence type to submit","const":"email"},"requirement_id":{"type":"string","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Format: "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"email_{subject_id}"},"children":[]}]}]}],"example":"email_003XXXXXXXXXXXXXXX"},"attachment_type":{"type":"string","description":"Attachment type","const":"email"},"value":{"type":"string","format":"email","description":"Email address for the co-owner (used for CCB digital signature)","example":"co-owner@example.com"}},"description":"Submit a co-owner email address for CCB signature"}},"components/schemas/BiometricsSession":{"id":"components/schemas/BiometricsSession","kind":"json-schema","title":"BiometricsSession","data":{"description":"Biometrics session for identity validation","type":"object","required":["session_url","expires_at"],"properties":{"session_url":{"type":"string","format":"uri","description":"URL for the partner to embed in their flow (webview or redirect)","example":"https://biometrics.dinie.com.br/session/..."},"expires_at":{"type":"integer","format":"int64","example":1772748000,"description":"Expiration timestamp (Unix epoch seconds)"}}}},"components/schemas/CreditOffer":{"id":"components/schemas/CreditOffer","kind":"json-schema","title":"CreditOffer","data":{"description":"Pre-approved credit offer for a customer","oneOf":[{"$ref":"#/components/schemas/FixedInstallmentCreditOffer"},{"$ref":"#/components/schemas/RangeInstallmentCreditOffer"}]}},"components/schemas/CreditOfferBase":{"id":"components/schemas/CreditOfferBase","kind":"json-schema","title":"CreditOfferBase","data":{"description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Campos comuns a toda oferta de crédito"},"children":[]}]}]}],"type":"object","required":["id","customer_id","status","approved_amount","min_amount","monthly_interest_rate","valid_until","created_at","updated_at"],"properties":{"id":{"$ref":"#/components/schemas/CreditOfferId","description":"Unique credit offer identifier"},"customer_id":{"$ref":"#/components/schemas/CustomerId","description":"Customer associated with this offer"},"external_id":{"type":"string","description":"Partner reference ID for the customer this offer belongs to"},"status":{"type":"string","enum":["available","accepted","expired"],"x-enumDescriptions":{"available":"Offer is active and can be accepted by the customer","accepted":"Customer accepted the offer and a loan was created","expired":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Offer passed the valid_until date without being accepted"},"children":[]}]}]}]},"description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"available"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"accepted"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" or "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"expired"},"children":[]}]}]}]},"approved_amount":{"$ref":"#/components/schemas/Money","description":"Maximum approved withdrawal amount"},"min_amount":{"type":"number","format":"double","description":"Minimum withdrawal amount","example":200},"monthly_interest_rate":{"type":"number","format":"double","description":"Monthly interest rate percentage","example":3.5},"due_date_rule":{"type":["string","null"],"description":"Due date rule for installments. Pending Core implementation."},"valid_until":{"type":"integer","format":"int64","example":1775253599,"description":"Offer expiration timestamp (Unix epoch seconds)"},"created_at":{"type":"integer","format":"int64","description":"When this resource was created (Unix epoch seconds)"},"updated_at":{"type":"integer","format":"int64","description":"When this resource was last modified (Unix epoch seconds)"}}}},"components/schemas/FixedInstallmentCreditOffer":{"id":"components/schemas/FixedInstallmentCreditOffer","kind":"json-schema","title":"FixedInstallmentCreditOffer","data":{"description":"Credit offer with a fixed number of installments","allOf":[{"$ref":"#/components/schemas/CreditOfferBase"},{"type":"object","required":["installments"],"properties":{"installments":{"type":"integer","description":"Number of installments for a fixed-term offer","example":12}}}],"example":{"id":"co_550e8400e29b41d4a716446655440000","customer_id":"cust_550e8400e29b41d4a716446655440000","external_id":"partner-ref-123","status":"available","approved_amount":50000,"min_amount":200,"monthly_interest_rate":3.5,"installments":12,"due_date_rule":null,"valid_until":1775253599,"created_at":1772791200,"updated_at":1772877600}}},"components/schemas/RangeInstallmentCreditOffer":{"id":"components/schemas/RangeInstallmentCreditOffer","kind":"json-schema","title":"RangeInstallmentCreditOffer","data":{"description":"Credit offer with a customer-selectable installment range","allOf":[{"$ref":"#/components/schemas/CreditOfferBase"},{"type":"object","required":["min_installments","max_installments"],"properties":{"min_installments":{"type":"integer","description":"Minimum number of installments the customer may select","example":3},"max_installments":{"type":"integer","description":"Maximum number of installments the customer may select","example":12}}}],"example":{"id":"co_660f9500f30c52e5b827557766551111","customer_id":"cust_550e8400e29b41d4a716446655440000","external_id":"partner-ref-456","status":"available","approved_amount":50000,"min_amount":200,"monthly_interest_rate":3.5,"min_installments":3,"max_installments":12,"due_date_rule":null,"valid_until":1775253599,"created_at":1772791200,"updated_at":1772877600}}},"components/schemas/CreateSimulationRequest":{"id":"components/schemas/CreateSimulationRequest","kind":"json-schema","title":"CreateSimulationRequest","data":{"description":"Parameters to create a loan simulation","type":"object","required":["requested_amount","installment_count"],"properties":{"requested_amount":{"type":"number","description":"Requested loan amount","example":25000},"installment_count":{"type":"integer","minimum":1,"description":"Number of installments for the simulation","example":12}}}},"components/schemas/Simulation":{"id":"components/schemas/Simulation","kind":"json-schema","title":"Simulation","data":{"description":"Loan simulation result with calculated values","type":"object","required":["id","credit_offer_id","requested_amount","principal_amount","interest_amount","iof_amount","total_amount","monthly_interest_rate","annual_interest_rate","monthly_cet_rate","annual_cet_rate","installment_count","installment_amount","fee_amount","first_due_date","created_at"],"properties":{"id":{"$ref":"#/components/schemas/SimulationId","description":"Unique simulation identifier"},"credit_offer_id":{"$ref":"#/components/schemas/CreditOfferId","description":"Credit offer used in this simulation"},"requested_amount":{"type":"number","format":"double","description":"Amount requested by the partner","example":25000},"principal_amount":{"type":"number","format":"double","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Principal amount (requested amount + financed fees)"},"children":[]}]}]}],"example":29375},"interest_amount":{"type":"number","format":"double","description":"Total interest amount","example":2614.36},"iof_amount":{"type":"number","format":"double","description":"IOF tax amount","example":1875},"fee_amount":{"type":"number","format":"double","description":"Registration fee amount","example":2500},"total_amount":{"type":"number","format":"double","description":"Total amount (sum of all installments)","example":31989.36},"monthly_interest_rate":{"type":"number","format":"double","description":"Monthly interest rate (percentage)","example":3.5},"annual_interest_rate":{"type":"number","format":"double","description":"Annual interest rate (percentage, compounded from monthly)","example":51.11},"monthly_cet_rate":{"type":"number","format":"double","description":"Monthly total effective cost (percentage)","example":2},"annual_cet_rate":{"type":"number","format":"double","description":"Annual total effective cost (percentage)","example":233.18},"installment_count":{"type":"integer","description":"Number of installments","example":4},"installment_amount":{"type":"number","format":"double","description":"Installment amount","example":7997.34},"first_due_date":{"type":"string","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"tag","tag":"html","inline":true,"attributes":{"name":"span","attrs":{"className":"fmt-badge fmt-badge--date","title":"YYYY-MM-DD"}},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"ISO 8601 · date"},"children":[]}]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"First installment due date"},"children":[]}]}]}],"example":"2026-04-03"},"created_at":{"type":"integer","format":"int64","description":"When this resource was created (Unix epoch seconds)"}}}},"components/schemas/CreateLoanRequest":{"id":"components/schemas/CreateLoanRequest","kind":"json-schema","title":"CreateLoanRequest","data":{"description":"Parameters to create a loan from a credit offer","type":"object","required":["credit_offer_id","simulation_id","installment_count","installment_amount","first_due_date"],"properties":{"credit_offer_id":{"$ref":"#/components/schemas/CreditOfferId","description":"Credit offer to accept"},"simulation_id":{"$ref":"#/components/schemas/SimulationId","description":"Simulation used for this loan"},"installment_count":{"type":"integer","minimum":1,"description":"Number of installments","example":4},"installment_amount":{"type":"number","description":"Installment amount","example":7997.34},"first_due_date":{"type":"string","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"tag","tag":"html","inline":true,"attributes":{"name":"span","attrs":{"className":"fmt-badge fmt-badge--date","title":"YYYY-MM-DD"}},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"ISO 8601 · date"},"children":[]}]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"First installment due date"},"children":[]}]}]}],"example":"2026-04-03"}}}},"components/schemas/Loan":{"id":"components/schemas/Loan","kind":"json-schema","title":"Loan","data":{"description":"Full representation of a loan","type":"object","required":["id","credit_offer_id","customer_id","simulation_id","status","requested_amount","principal_amount","iof_amount","monthly_interest_rate","annual_interest_rate","monthly_cet_rate","annual_cet_rate","total_amount","installment_count","installment_amount","first_due_date","ccb_number","disbursement_method","signing_url","created_at","updated_at"],"properties":{"id":{"$ref":"#/components/schemas/LoanId","description":"Unique loan identifier"},"credit_offer_id":{"$ref":"#/components/schemas/CreditOfferId","description":"Credit offer that originated this loan"},"customer_id":{"$ref":"#/components/schemas/CustomerId","description":"Customer associated with this loan"},"simulation_id":{"$ref":"#/components/schemas/SimulationId","description":"Simulation used to create this loan"},"status":{"type":"string","enum":["awaiting_signatures","processing","active","finished","cancelled","error"],"x-enumDescriptions":{"awaiting_signatures":"CCB contract generated, awaiting customer signature","processing":"All signatures collected, disbursement in progress","active":"Loan disbursed, installments are being collected","finished":"All installments paid, loan completed","cancelled":"Loan cancelled before disbursement","error":"An error occurred during processing"},"description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"awaiting_signatures"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"processing"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"active"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"finished"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"cancelled"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"error"},"children":[]}]}]}]},"requested_amount":{"$ref":"#/components/schemas/Money","description":"Amount requested by the customer"},"principal_amount":{"type":["number","null"],"format":"double","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Principal amount (requested + financed fees). Null until calculated."},"children":[]}]}]}]},"iof_amount":{"type":["number","null"],"format":"double","description":"IOF tax amount"},"monthly_interest_rate":{"type":"number","format":"double","description":"Monthly interest rate (percentage)"},"annual_interest_rate":{"type":"number","format":"double","description":"Annual interest rate (percentage, compounded from monthly)"},"monthly_cet_rate":{"type":"number","format":"double","description":"Monthly total effective cost (percentage)"},"annual_cet_rate":{"type":"number","format":"double","description":"Annual total effective cost (percentage)"},"total_amount":{"$ref":"#/components/schemas/Money","description":"Sum of all installment payments"},"installment_count":{"type":"integer","description":"Number of installments"},"installment_amount":{"type":"number","format":"double","description":"Installment amount","example":7997.34},"first_due_date":{"type":"string","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"tag","tag":"html","inline":true,"attributes":{"name":"span","attrs":{"className":"fmt-badge fmt-badge--date","title":"YYYY-MM-DD"}},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"ISO 8601 · date"},"children":[]}]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"First installment due date"},"children":[]}]}]}],"example":"2026-04-03"},"ccb_number":{"type":["string","null"],"description":"CCB contract number. Null until the contract is generated."},"disbursement_method":{"type":["string","null"],"description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Disbursement method (e.g., "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"pix"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"). Null until disbursement."},"children":[]}]}]}]},"signing_url":{"type":["string","null"],"format":"uri","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"ClickSign widget URL. Present only during "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"awaiting_signatures"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" status."},"children":[]}]}]}]},"created_at":{"type":"integer","format":"int64","description":"When this resource was created (Unix epoch seconds)"},"updated_at":{"type":"integer","format":"int64","description":"When this resource was last modified (Unix epoch seconds)"}}}},"components/schemas/Transaction":{"id":"components/schemas/Transaction","kind":"json-schema","title":"Transaction","data":{"description":"Loan installment with amounts and payment status","type":"object","required":["id","loan_id","type","status","due_date","amount_due","amount_paid","amount_remaining","principal","interest","fees","days_overdue","paid_at","created_at","updated_at"],"properties":{"id":{"$ref":"#/components/schemas/TransactionId","description":"Unique transaction identifier"},"loan_id":{"$ref":"#/components/schemas/LoanId","description":"Associated loan identifier"},"type":{"type":"string","const":"installment","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Always "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"installment"},"children":[]}]}]}]},"status":{"type":"string","enum":["pending","paid","overdue","partially_paid"],"x-enumDescriptions":{"pending":"Payment not yet due or awaiting payment","paid":"Full payment received","overdue":"Payment overdue without full settlement","partially_paid":"Partial payment received"},"description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"pending"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"paid"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"overdue"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" or "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"partially_paid"},"children":[]}]}]}]},"due_date":{"type":"string","example":"2026-04-03","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"tag","tag":"html","inline":true,"attributes":{"name":"span","attrs":{"className":"fmt-badge fmt-badge--date","title":"YYYY-MM-DD"}},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"ISO 8601 · date"},"children":[]}]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Installment due date"},"children":[]}]}]}]},"amount_due":{"$ref":"#/components/schemas/Money","description":"Total amount due for this installment"},"amount_paid":{"$ref":"#/components/schemas/Money","description":"Amount already paid for this installment"},"amount_remaining":{"$ref":"#/components/schemas/Money","description":"Remaining amount to pay for this installment"},"principal":{"$ref":"#/components/schemas/Money","description":"Principal portion"},"interest":{"$ref":"#/components/schemas/Money","description":"Interest portion"},"fees":{"$ref":"#/components/schemas/Money","description":"Fees and charges portion"},"days_overdue":{"type":"integer","minimum":0,"description":"Days overdue (0 if current)"},"paid_at":{"type":["integer","null"],"format":"int64","description":"When payment was received (Unix epoch seconds)"},"created_at":{"type":"integer","format":"int64","description":"When this resource was created (Unix epoch seconds)"},"updated_at":{"type":"integer","format":"int64","description":"When this resource was last modified (Unix epoch seconds)"}}}},"components/schemas/CreateWebhookEndpointRequest":{"id":"components/schemas/CreateWebhookEndpointRequest","kind":"json-schema","title":"CreateWebhookEndpointRequest","data":{"description":"Parameters to create a new webhook endpoint","type":"object","required":["url"],"properties":{"url":{"type":"string","format":"uri","description":"HTTPS URL to receive webhook deliveries","example":"https://partner.example.com/webhooks/dinie"},"events":{"type":"array","items":{"type":"string"},"description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Event types to subscribe to. Supports wildcards "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"*"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" (e.g., "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"loan.*"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"). Empty or omitted = all events."},"children":[]}]}]}],"example":["customer.active","credit_offer.available","loan.*"]},"description":{"type":"string","description":"Optional human-readable label","example":"Production webhook"}}}},"components/schemas/UpdateWebhookEndpointRequest":{"id":"components/schemas/UpdateWebhookEndpointRequest","kind":"json-schema","title":"UpdateWebhookEndpointRequest","data":{"description":"Parameters to update a webhook endpoint","type":"object","properties":{"url":{"type":"string","format":"uri","description":"HTTPS URL to receive webhook deliveries"},"events":{"type":"array","items":{"type":"string"},"description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Subscribed event types, supports wildcards "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"*"},"children":[]}]}]}]},"description":{"type":"string","description":"Optional human-readable description for this endpoint"},"status":{"type":"string","description":"Enable or disable the endpoint","enum":["active","disabled"],"x-enumDescriptions":{"active":"Endpoint active, receiving webhooks","disabled":"Endpoint paused, no webhooks will be sent"}}}}},"components/schemas/WebhookEndpoint":{"id":"components/schemas/WebhookEndpoint","kind":"json-schema","title":"WebhookEndpoint","data":{"description":"Endpoint configured to receive event notifications","type":"object","required":["id","url","events","description","status","created_at","updated_at"],"properties":{"id":{"$ref":"#/components/schemas/WebhookEndpointId","description":"Unique webhook endpoint identifier"},"url":{"type":"string","format":"uri","description":"Delivery URL (HTTPS only)"},"events":{"type":"array","items":{"type":"string"},"description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Event types to subscribe to (empty = all events)"},"children":[]}]}]}]},"description":{"type":"string","description":"Human-readable description for this endpoint"},"status":{"type":"string","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"active"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" or "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"disabled"},"children":[]}]}]}],"enum":["active","disabled"],"x-enumDescriptions":{"active":"Endpoint is receiving webhook deliveries","disabled":"Endpoint is paused; no webhooks will be sent"}},"created_at":{"type":"integer","format":"int64","description":"When this resource was created (Unix epoch seconds)"},"updated_at":{"type":"integer","format":"int64","description":"When this resource was last modified (Unix epoch seconds)"}}}},"components/schemas/WebhookEndpointWithSecret":{"id":"components/schemas/WebhookEndpointWithSecret","kind":"json-schema","title":"WebhookEndpointWithSecret","data":{"description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Returned only on creation. The "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"secret"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" cannot be retrieved again."},"children":[]}]}]}],"allOf":[{"$ref":"#/components/schemas/WebhookEndpoint"},{"type":"object","required":["secret"],"properties":{"secret":{"type":"string","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"HMAC signing secret (prefix "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"whsec_"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"). Store securely — displayed only once."},"children":[]}]}]}],"example":"whsec_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"}}}]}},"components/schemas/WebhookDelivery":{"id":"components/schemas/WebhookDelivery","kind":"json-schema","title":"WebhookDelivery","data":{"description":"Record of a webhook delivery attempt","type":"object","required":["id","event_type","status","attempt_count","created_at"],"properties":{"id":{"$ref":"#/components/schemas/WebhookDeliveryId"},"event_type":{"type":"string","description":"Event type for this delivery"},"status":{"type":"string","enum":["pending","delivered","failed"],"description":"Delivery status","x-enumDescriptions":{"pending":"Awaiting delivery","delivered":"Successfully delivered","failed":"Delivery failed"}},"response_status":{"type":["integer","null"],"description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"HTTP status code from the last delivery attempt ("},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"null"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" if none)"},"children":[]}]}]}]},"attempt_count":{"type":"integer","description":"Number of attempts already made"},"delivered_at":{"type":["string","null"],"description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"tag","tag":"html","inline":true,"attributes":{"name":"span","attrs":{"className":"fmt-badge fmt-badge--datetime","title":"YYYY-MM-DDThh:mm:ssZ"}},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"ISO 8601 · date-time"},"children":[]}]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"When the delivery succeeded ("},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"null"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" if not yet delivered)"},"children":[]}]}]}]},"failed_at":{"type":["string","null"],"description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"tag","tag":"html","inline":true,"attributes":{"name":"span","attrs":{"className":"fmt-badge fmt-badge--datetime","title":"YYYY-MM-DDThh:mm:ssZ"}},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"ISO 8601 · date-time"},"children":[]}]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"When the delivery last failed ("},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"null"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" if it has not failed)"},"children":[]}]}]}]},"created_at":{"type":"string","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"tag","tag":"html","inline":true,"attributes":{"name":"span","attrs":{"className":"fmt-badge fmt-badge--datetime","title":"YYYY-MM-DDThh:mm:ssZ"}},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"ISO 8601 · date-time"},"children":[]}]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"When this delivery was created"},"children":[]}]}]}]}}}},"components/schemas/WebhookSecretRotation":{"id":"components/schemas/WebhookSecretRotation","kind":"json-schema","title":"WebhookSecretRotation","data":{"description":"Result of the webhook signing secret rotation","type":"object","required":["id","secret","previous_secret_expires_at"],"properties":{"id":{"$ref":"#/components/schemas/WebhookEndpointId","description":"Unique webhook endpoint identifier"},"secret":{"type":"string","description":"New HMAC signing secret","example":"whsec_yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy"},"previous_secret_expires_at":{"type":"integer","format":"int64","description":"When the old secret stops being included in signatures (Unix epoch seconds)"}}}},"components/schemas/EventId":{"id":"components/schemas/EventId","kind":"json-schema","title":"EventId","data":{"description":"Unique webhook event identifier","type":"string","pattern":"^evt_[0-9a-f]{32}$","example":"evt_550e8400e29b41d4a716446655440000"}},"components/schemas/WebhookEventBase":{"id":"components/schemas/WebhookEventBase","kind":"json-schema","title":"WebhookEventBase","data":{"type":"object","required":["id","type","api_version","created_at","delivery_id","timestamp"],"description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Standard Webhooks envelope delivered with "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"webhook-id"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"webhook-timestamp"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"webhook-signature"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" headers."},"children":[]}]}]}],"properties":{"id":{"$ref":"#/components/schemas/EventId","description":"Unique event identifier"},"type":{"type":"string","description":"Event type identifier"},"api_version":{"type":"string","description":"API version used to generate this event","example":"2026-03-01"},"created_at":{"type":"integer","format":"int64","description":"When the event was created (Unix epoch seconds)"},"delivery_id":{"type":"string","description":"Unique delivery attempt identifier"},"timestamp":{"type":"integer","format":"int64","description":"When the event occurred (Unix epoch seconds)"}}}},"components/schemas/WebhookEvent_CustomerCreated":{"id":"components/schemas/WebhookEvent_CustomerCreated","kind":"json-schema","title":"WebhookEvent_CustomerCreated","data":{"description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Fires after co-owner enrichment completes and KYC requirements are populated. Customer is at "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"pending_kyc"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" status."},"children":[]}]}]}],"allOf":[{"$ref":"#/components/schemas/WebhookEventBase"},{"type":"object","properties":{"type":{"type":"string","description":"Event type","const":"customer.created"},"data":{"type":"object","description":"Created customer data","required":["id","external_id","name","email","phone","cpf","trading_name","status","kyc"],"properties":{"id":{"$ref":"#/components/schemas/CustomerId"},"external_id":{"type":["string","null"]},"name":{"type":"string"},"email":{"type":"string"},"phone":{"type":"string"},"cpf":{"type":"string"},"cnpj":{"type":["string","null"]},"trading_name":{"type":"string"},"status":{"type":"string","const":"pending_kyc"},"kyc":{"type":"array","description":"KYC requirements populated after enrichment","items":{"$ref":"#/components/schemas/KycRequirement"}}}}}}]}},"components/schemas/WebhookEvent_CustomerStatus":{"id":"components/schemas/WebhookEvent_CustomerStatus","kind":"json-schema","title":"WebhookEvent_CustomerStatus","data":{"description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Used for "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"customer.under_review"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" and "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"customer.active"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" events."},"children":[]}]}]}],"allOf":[{"$ref":"#/components/schemas/WebhookEventBase"},{"type":"object","properties":{"type":{"type":"string","description":"Event type","enum":["customer.under_review","customer.active"],"x-enumDescriptions":{"customer.under_review":"Customer under verification review","customer.active":"Customer approved and active"}},"data":{"type":"object","description":"Customer status change data","required":["id","external_id","status"],"properties":{"id":{"$ref":"#/components/schemas/CustomerId"},"external_id":{"type":["string","null"]},"status":{"type":"string","enum":["under_review","active"]}}}}}]}},"components/schemas/WebhookEvent_CustomerDenied":{"id":"components/schemas/WebhookEvent_CustomerDenied","kind":"json-schema","title":"WebhookEvent_CustomerDenied","data":{"description":"Fires when the customer is permanently blocked (fraud, closed company, or other terminal condition).","allOf":[{"$ref":"#/components/schemas/WebhookEventBase"},{"type":"object","properties":{"type":{"type":"string","description":"Event type","const":"customer.denied"},"data":{"type":"object","description":"Denied customer data","required":["id","external_id","name","email","phone","cpf","status"],"properties":{"id":{"$ref":"#/components/schemas/CustomerId"},"external_id":{"type":["string","null"]},"name":{"type":"string"},"email":{"type":"string"},"phone":{"type":"string"},"cpf":{"type":"string"},"cnpj":{"type":["string","null"]},"status":{"type":"string","const":"denied"}}}}}]}},"components/schemas/WebhookEvent_CustomerKycUpdated":{"id":"components/schemas/WebhookEvent_CustomerKycUpdated","kind":"json-schema","title":"WebhookEvent_CustomerKycUpdated","data":{"allOf":[{"$ref":"#/components/schemas/WebhookEventBase"},{"type":"object","properties":{"type":{"type":"string","description":"Event type","const":"customer.kyc_updated"},"data":{"type":"object","description":"Customer KYC update data","required":["id","external_id","status","kyc"],"properties":{"id":{"$ref":"#/components/schemas/CustomerId"},"external_id":{"type":["string","null"]},"status":{"type":"string","enum":["pending_kyc","under_review","active"]},"kyc":{"type":"array","description":"Full current state of all KYC requirements","items":{"$ref":"#/components/schemas/KycRequirement"}}}}}}],"description":"Fires when any KYC requirement changes status"}},"components/schemas/WebhookEvent_CreditOffer":{"id":"components/schemas/WebhookEvent_CreditOffer","kind":"json-schema","title":"WebhookEvent_CreditOffer","data":{"description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Used for "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"credit_offer.available"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" and "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"credit_offer.expired"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" events."},"children":[]}]}]}],"allOf":[{"$ref":"#/components/schemas/WebhookEventBase"},{"type":"object","properties":{"type":{"type":"string","description":"Event type","enum":["credit_offer.available","credit_offer.expired"],"x-enumDescriptions":{"credit_offer.available":"New credit offer available for withdrawal","credit_offer.expired":"Credit offer expired or replaced"}},"data":{"type":"object","description":"Credit offer data","required":["id","customer_id","external_id","status","approved_amount","min_amount","monthly_interest_rate","installments","valid_until"],"properties":{"id":{"$ref":"#/components/schemas/CreditOfferId"},"customer_id":{"$ref":"#/components/schemas/CustomerId"},"external_id":{"type":["string","null"],"description":"Partner external reference for this customer","example":"partner-ref-123"},"status":{"type":"string","enum":["available","expired"]},"approved_amount":{"$ref":"#/components/schemas/Money"},"min_amount":{"type":"number","format":"double","description":"Minimum withdrawal amount"},"monthly_interest_rate":{"type":"number","format":"double","description":"Monthly interest rate percentage"},"installments":{"type":"integer","description":"Number of installments"},"due_date_rule":{"type":["string","null"],"description":"Due date rule for installments. Pending Core implementation."},"valid_until":{"type":"integer","format":"int64","description":"Offer expiration timestamp (Unix epoch seconds)"}}}}}]}},"components/schemas/WebhookEvent_LoanCreated":{"id":"components/schemas/WebhookEvent_LoanCreated","kind":"json-schema","title":"WebhookEvent_LoanCreated","data":{"description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Fires when the loan is created with CCB generated synchronously. Loan starts in "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"awaiting_signatures"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" status."},"children":[]}]}]}],"allOf":[{"$ref":"#/components/schemas/WebhookEventBase"},{"type":"object","properties":{"type":{"type":"string","description":"Event type","const":"loan.created"},"data":{"type":"object","description":"Created loan data","required":["id","credit_offer_id","customer_id","status","requested_amount","installment_count","signing_url"],"properties":{"id":{"$ref":"#/components/schemas/LoanId"},"credit_offer_id":{"$ref":"#/components/schemas/CreditOfferId"},"customer_id":{"$ref":"#/components/schemas/CustomerId"},"status":{"type":"string","const":"awaiting_signatures"},"requested_amount":{"$ref":"#/components/schemas/Money"},"installment_count":{"type":"integer"},"signing_url":{"type":"string","format":"uri","description":"ClickSign widget URL for customer signing"}}}}}]}},"components/schemas/WebhookEvent_LoanSignatureReceived":{"id":"components/schemas/WebhookEvent_LoanSignatureReceived","kind":"json-schema","title":"WebhookEvent_LoanSignatureReceived","data":{"description":"Fires each time an individual signer completes their signature on the CCB contract.","allOf":[{"$ref":"#/components/schemas/WebhookEventBase"},{"type":"object","properties":{"type":{"type":"string","description":"Event type","const":"loan.signature_received"},"data":{"type":"object","description":"Signature received data","required":["id","status","signer","signatures_received","signatures_required"],"properties":{"id":{"$ref":"#/components/schemas/LoanId"},"status":{"type":"string","const":"awaiting_signatures"},"signer":{"type":"object","required":["name","cpf","signed_at"],"properties":{"name":{"type":"string","description":"Signer name"},"cpf":{"type":"string","description":"Signer CPF"},"signed_at":{"type":"integer","format":"int64","description":"When the signature was captured (Unix epoch seconds)"}}},"signatures_received":{"type":"integer","description":"Number of signatures collected so far"},"signatures_required":{"type":"integer","description":"Total number of signatures required"}}}}}]}},"components/schemas/WebhookEvent_LoanProcessing":{"id":"components/schemas/WebhookEvent_LoanProcessing","kind":"json-schema","title":"WebhookEvent_LoanProcessing","data":{"description":"Fires when all required signatures are collected and disbursement is in progress.","allOf":[{"$ref":"#/components/schemas/WebhookEventBase"},{"type":"object","properties":{"type":{"type":"string","description":"Event type","const":"loan.processing"},"data":{"type":"object","description":"Loan processing data","required":["id","credit_offer_id","customer_id","status","ccb_number","disbursement_method"],"properties":{"id":{"$ref":"#/components/schemas/LoanId"},"credit_offer_id":{"$ref":"#/components/schemas/CreditOfferId"},"customer_id":{"$ref":"#/components/schemas/CustomerId"},"status":{"type":"string","const":"processing"},"ccb_number":{"type":"string","description":"CCB contract number"},"disbursement_method":{"type":"string","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Disbursement method (e.g., "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"pix"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":")"},"children":[]}]}]}]}}}}}]}},"components/schemas/WebhookEvent_LoanActive":{"id":"components/schemas/WebhookEvent_LoanActive","kind":"json-schema","title":"WebhookEvent_LoanActive","data":{"allOf":[{"$ref":"#/components/schemas/WebhookEventBase"},{"type":"object","properties":{"type":{"type":"string","description":"Event type","const":"loan.active"},"data":{"type":"object","description":"Active loan data","required":["id","status","requested_amount","principal_amount"],"properties":{"id":{"$ref":"#/components/schemas/LoanId"},"status":{"type":"string","const":"active"},"requested_amount":{"$ref":"#/components/schemas/Money"},"principal_amount":{"$ref":"#/components/schemas/Money"}}}}}],"description":"Fires when the disbursement is confirmed and the loan enters the repayment phase."}},"components/schemas/WebhookEvent_LoanPaymentReceived":{"id":"components/schemas/WebhookEvent_LoanPaymentReceived","kind":"json-schema","title":"WebhookEvent_LoanPaymentReceived","data":{"allOf":[{"$ref":"#/components/schemas/WebhookEventBase"},{"type":"object","properties":{"type":{"type":"string","description":"Event type","const":"loan.payment_received"},"data":{"type":"object","description":"Payment received data","required":["id","status","payment"],"properties":{"id":{"$ref":"#/components/schemas/LoanId"},"status":{"type":"string","const":"active"},"payment":{"type":"object","required":["amount","paid_at","installment_number"],"properties":{"amount":{"$ref":"#/components/schemas/Money","description":"Payment amount received"},"paid_at":{"type":"integer","format":"int64","description":"When payment was received (Unix epoch seconds)"},"installment_number":{"type":"integer","description":"Installment number paid"}}}}}}}],"description":"Fires when an installment payment is recorded for the loan."}},"components/schemas/WebhookEvent_LoanStatus":{"id":"components/schemas/WebhookEvent_LoanStatus","kind":"json-schema","title":"WebhookEvent_LoanStatus","data":{"description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Used for "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"loan.finished"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"loan.cancelled"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", and "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"loan.error"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" events."},"children":[]}]}]}],"allOf":[{"$ref":"#/components/schemas/WebhookEventBase"},{"type":"object","properties":{"type":{"type":"string","description":"Event type","enum":["loan.finished","loan.cancelled","loan.error"],"x-enumDescriptions":{"loan.finished":"Loan fully paid off","loan.cancelled":"Loan cancelled before disbursement","loan.error":"Disbursement or processing error"}},"data":{"type":"object","description":"Loan status change data","required":["id","status"],"properties":{"id":{"$ref":"#/components/schemas/LoanId"},"status":{"type":"string","enum":["finished","cancelled","error"]},"error":{"type":"object","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Error details. Present only for "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"loan.error"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" events"},"children":[]}]}]}],"required":["code","message"],"properties":{"code":{"type":"string","description":"Machine-readable error code"},"message":{"type":"string","description":"Human-readable error description"}}}}}}}]}},"schema_0":{"kind":"json-schema","data":{"type":"object","required":["grant_type"],"properties":{"grant_type":{"type":"string","const":"client_credentials"}}},"id":"schema_0"},"schema_1":{"kind":"json-schema","data":{"type":"object","required":["type","title","status","detail","code"],"properties":{"type":{"type":"string","const":"https://docs.dinie.com/errors/invalid-request"},"title":{"type":"string","const":"Invalid Request"},"status":{"type":"integer","const":400},"detail":{"type":"string"},"code":{"type":"string","enum":["missing_grant_type","unsupported_grant_type","invalid_content_type"],"x-enumDescriptions":{"missing_grant_type":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"grant_type"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" parameter is missing"},"children":[]}]}]}],"unsupported_grant_type":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"grant_type"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" is not "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"client_credentials"},"children":[]}]}]}],"invalid_content_type":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Content-Type"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" is not "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"application/x-www-form-urlencoded"},"children":[]}]}]}]}}}},"id":"schema_1"},"schema_2":{"kind":"json-schema","data":{"type":"object","required":["type","title","status","detail","code"],"properties":{"type":{"type":"string","const":"https://docs.dinie.com/errors/authentication-failed"},"title":{"type":"string","const":"Authentication Failed"},"status":{"type":"integer","const":401},"detail":{"type":"string"},"code":{"type":"string","enum":["missing_authorization","invalid_client","invalid_client_secret","credential_revoked","credential_expired"],"x-enumDescriptions":{"missing_authorization":"Missing client credentials","invalid_client":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"client_id"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" does not exist"},"children":[]}]}]}],"invalid_client_secret":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"client_secret"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" does not match"},"children":[]}]}]}],"credential_revoked":"Credential has been revoked","credential_expired":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Credential has passed its "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"expires_at"},"children":[]}]}]}]}}}},"id":"schema_2"},"schema_3":{"kind":"json-schema","data":{"type":"object","required":["type","title","status","detail"],"properties":{"type":{"type":"string","const":"https://docs.dinie.com/errors/rate-limit-exceeded"},"title":{"type":"string","const":"Rate Limit Exceeded"},"status":{"type":"integer","const":429},"detail":{"type":"string"}}},"id":"schema_3"},"schema_4":{"kind":"json-schema","data":{"type":"object","properties":{"Retry-After":{"type":"integer","description":"Seconds until the rate limit resets"}}},"id":"schema_4"},"schema_5":{"kind":"json-schema","data":{"type":"object","required":["type","title","status","detail"],"properties":{"type":{"type":"string","const":"https://docs.dinie.com/errors/internal"},"title":{"type":"string","const":"Internal Error"},"status":{"type":"integer","const":500},"detail":{"type":"string"}}},"id":"schema_5"},"schema_6":{"kind":"json-schema","data":{"type":"string"},"id":"schema_6"},"schema_7":{"kind":"json-schema","data":{"type":"object","required":["type","title","status","detail","code"],"properties":{"type":{"type":"string","const":"https://docs.dinie.com/errors/invalid-request"},"title":{"type":"string","const":"Invalid Request"},"status":{"type":"integer","const":400},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_content_type","malformed_body"],"x-enumDescriptions":{"invalid_content_type":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Content-Type"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" is not "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"application/json"},"children":[]}]}]}],"malformed_body":"Request body is not valid JSON"}}}},"id":"schema_7"},"schema_8":{"kind":"json-schema","data":{"type":"object","required":["type","title","status","detail","code"],"properties":{"type":{"type":"string","const":"https://docs.dinie.com/errors/authentication-failed"},"title":{"type":"string","const":"Authentication Failed"},"status":{"type":"integer","const":401},"detail":{"type":"string"},"code":{"type":"string","enum":["missing_token","invalid_token","token_expired"],"x-enumDescriptions":{"missing_token":"Authorization header is missing","invalid_token":"Bearer token is invalid or malformed","token_expired":"Bearer token has expired"}}}},"id":"schema_8"},"schema_9":{"kind":"json-schema","data":{"type":"object","required":["type","title","status","detail","code"],"properties":{"type":{"type":"string","const":"https://docs.dinie.com/errors/validation-failed"},"title":{"type":"string","const":"Validation Failed"},"status":{"type":"integer","const":422},"detail":{"type":"string"},"code":{"type":"string","const":"missing_required_field","x-enumDescriptions":{"missing_required_field":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"name"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" is missing"},"children":[]}]}]}]}}}},"id":"schema_9"},"schema_10":{"kind":"json-schema","data":{"type":"object","required":["data","has_more"],"properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/Credential"}},"has_more":{"type":"boolean"}}},"id":"schema_10"},"schema_11":{"kind":"json-schema","data":{"$ref":"#/components/schemas/ApiClientId"},"id":"schema_11"},"schema_12":{"kind":"json-schema","data":{"type":"object","required":["type","title","status","detail","code"],"properties":{"type":{"type":"string","const":"https://docs.dinie.com/errors/not-found"},"title":{"type":"string","const":"Not Found"},"status":{"type":"integer","const":404},"detail":{"type":"string"},"code":{"type":"string","const":"credential_not_found","x-enumDescriptions":{"credential_not_found":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"client_id"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" does not exist or does not belong to this partner"},"children":[]}]}]}]}}}},"id":"schema_12"},"schema_13":{"kind":"json-schema","data":{"type":"object","required":["type","title","status","detail","code"],"properties":{"type":{"type":"string","const":"https://docs.dinie.com/errors/conflict"},"title":{"type":"string","const":"Conflict"},"status":{"type":"integer","const":409},"detail":{"type":"string"},"code":{"type":"string","const":"last_active_credential","x-enumDescriptions":{"last_active_credential":"Cannot revoke the last active credential"}}}},"id":"schema_13"},"schema_14":{"kind":"json-schema","data":{"type":"object","required":["type","title","status","detail","code"],"properties":{"type":{"type":"string","const":"https://docs.dinie.com/errors/conflict"},"title":{"type":"string","const":"Conflict"},"status":{"type":"integer","const":409},"detail":{"type":"string"},"code":{"type":"string","const":"customer_already_exists","x-enumDescriptions":{"customer_already_exists":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Same CPF/CNPJ already registered under this partner with a different "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"external_id"},"children":[]}]}]}]}}}},"id":"schema_14"},"schema_15":{"kind":"json-schema","data":{"type":"object","required":["type","title","status","detail","code"],"properties":{"type":{"type":"string","const":"https://docs.dinie.com/errors/validation-failed"},"title":{"type":"string","const":"Validation Failed"},"status":{"type":"integer","const":422},"detail":{"type":"string"},"code":{"type":"string","enum":["missing_required_field","invalid_cpf","invalid_cnpj","invalid_email","invalid_phone"],"x-enumDescriptions":{"missing_required_field":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"cpf"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" is missing (required for all customers)"},"children":[]}]}]}],"invalid_cpf":"CPF fails check-digit validation","invalid_cnpj":"CNPJ fails check-digit validation","invalid_email":"Email format is invalid","invalid_phone":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Phone format is invalid (expected E.164 with +55 country code)"},"children":[]}]}]}]}}}},"id":"schema_15"},"schema_16":{"kind":"json-schema","data":{"type":"string","enum":["creating","pending_kyc","under_review","active","denied"]},"id":"schema_16"},"schema_17":{"kind":"json-schema","data":{"type":"string","enum":["created_at","updated_at"],"default":"created_at"},"id":"schema_17"},"schema_18":{"kind":"json-schema","data":{"type":"string","enum":["asc","desc"],"default":"desc"},"id":"schema_18"},"schema_19":{"kind":"json-schema","data":{"type":"integer","default":25,"minimum":1,"maximum":100},"id":"schema_19"},"schema_20":{"kind":"json-schema","data":{"type":"object","required":["data","has_more"],"properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/Customer"}},"has_more":{"type":"boolean"}}},"id":"schema_20"},"schema_21":{"kind":"json-schema","data":{"type":"object","required":["type","title","status","detail","code"],"properties":{"type":{"type":"string","const":"https://docs.dinie.com/errors/invalid-request"},"title":{"type":"string","const":"Invalid Request"},"status":{"type":"integer","const":400},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_limit","invalid_sort","invalid_order","invalid_cursor"],"x-enumDescriptions":{"invalid_limit":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"limit"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" is not a valid integer or is outside 1–100 range"},"children":[]}]}]}],"invalid_sort":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"sort"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" value is not one of the supported fields"},"children":[]}]}]}],"invalid_order":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"order"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" value is not "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"asc"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" or "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"desc"},"children":[]}]}]}],"invalid_cursor":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"starting_after"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" references a non-existent or inaccessible customer"},"children":[]}]}]}]}}}},"id":"schema_21"},"schema_22":{"kind":"json-schema","data":{"$ref":"#/components/schemas/CustomerId"},"id":"schema_22"},"schema_23":{"kind":"json-schema","data":{"type":"object","required":["type","title","status","detail","code"],"properties":{"type":{"type":"string","const":"https://docs.dinie.com/errors/forbidden"},"title":{"type":"string","const":"Forbidden"},"status":{"type":"integer","const":403},"detail":{"type":"string"},"code":{"type":"string","const":"forbidden"}}},"id":"schema_23"},"schema_24":{"kind":"json-schema","data":{"type":"object","required":["type","title","status","detail","code"],"properties":{"type":{"type":"string","const":"https://docs.dinie.com/errors/not-found"},"title":{"type":"string","const":"Not Found"},"status":{"type":"integer","const":404},"detail":{"type":"string"},"code":{"type":"string","const":"customer_not_found","x-enumDescriptions":{"customer_not_found":"Customer ID does not exist or does not belong to this partner"}}}},"id":"schema_24"},"schema_25":{"kind":"json-schema","data":{"type":"object","required":["type","title","status","detail","code"],"properties":{"type":{"type":"string","const":"https://docs.dinie.com/errors/invalid-request"},"title":{"type":"string","const":"Invalid Request"},"status":{"type":"integer","const":400},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_content_type","malformed_body","empty_update"],"x-enumDescriptions":{"invalid_content_type":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Content-Type"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" is not "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"application/json"},"children":[]}]}]}],"malformed_body":"Request body is not valid JSON","empty_update":"Request body contains no updatable fields"}}}},"id":"schema_25"},"schema_26":{"kind":"json-schema","data":{"type":"object","required":["type","title","status","detail","code"],"properties":{"type":{"type":"string","const":"https://docs.dinie.com/errors/validation-failed"},"title":{"type":"string","const":"Validation Failed"},"status":{"type":"integer","const":422},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_email","invalid_phone"],"x-enumDescriptions":{"invalid_email":"Email format is invalid","invalid_phone":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Phone format is invalid (expected E.164 with +55 country code)"},"children":[]}]}]}]}}}},"id":"schema_26"},"schema_27":{"kind":"json-schema","data":{"oneOf":[{"$ref":"#/components/schemas/KycUploadCnh"},{"$ref":"#/components/schemas/KycUploadRg"},{"$ref":"#/components/schemas/KycUploadSelfie"},{"$ref":"#/components/schemas/KycUploadProofOfAddress"},{"$ref":"#/components/schemas/KycUploadCcmei"},{"$ref":"#/components/schemas/KycUploadEiMei"},{"$ref":"#/components/schemas/KycUploadIncomeStatement"},{"$ref":"#/components/schemas/KycUploadArticlesOfAssociation"},{"$ref":"#/components/schemas/KycUploadEireliIncorporation"},{"$ref":"#/components/schemas/KycUploadEmail"}],"discriminator":{"propertyName":"evidence_type","mapping":{"cnh":"#/components/schemas/KycUploadCnh","rg":"#/components/schemas/KycUploadRg","selfie":"#/components/schemas/KycUploadSelfie","proof_of_address":"#/components/schemas/KycUploadProofOfAddress","ccmei":"#/components/schemas/KycUploadCcmei","ei_mei":"#/components/schemas/KycUploadEiMei","income_statement":"#/components/schemas/KycUploadIncomeStatement","articles_of_association":"#/components/schemas/KycUploadArticlesOfAssociation","eireli_incorporation_statement":"#/components/schemas/KycUploadEireliIncorporation","email":"#/components/schemas/KycUploadEmail"}}},"id":"schema_27"},"schema_28":{"kind":"json-schema","data":{"type":"object","required":["type","title","status","detail","code"],"properties":{"type":{"type":"string","const":"https://docs.dinie.com/errors/invalid-request"},"title":{"type":"string","const":"Invalid Request"},"status":{"type":"integer","const":400},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_content_type","missing_file","missing_type","file_too_large"],"x-enumDescriptions":{"invalid_content_type":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Content-Type"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" is not "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"multipart/form-data"},"children":[]}]}]}],"missing_file":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"file"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" part is missing from the multipart request"},"children":[]}]}]}],"missing_type":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"requirement_id"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"evidence_type"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", or "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"attachment_type"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" field is missing"},"children":[]}]}]}],"file_too_large":"File exceeds the maximum allowed size"}}}},"id":"schema_28"},"schema_29":{"kind":"json-schema","data":{"type":"object","required":["type","title","status","detail","code"],"properties":{"type":{"type":"string","const":"https://docs.dinie.com/errors/conflict"},"title":{"type":"string","const":"Conflict"},"status":{"type":"integer","const":409},"detail":{"type":"string"},"code":{"type":"string","const":"email_already_exists","x-enumDescriptions":{"email_already_exists":"Director email is already set and cannot be overwritten"}}}},"id":"schema_29"},"schema_30":{"kind":"json-schema","data":{"type":"object","required":["type","title","status","detail","code"],"properties":{"type":{"type":"string","const":"https://docs.dinie.com/errors/validation-failed"},"title":{"type":"string","const":"Validation Failed"},"status":{"type":"integer","const":422},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_requirement","invalid_file_format"],"x-enumDescriptions":{"invalid_requirement":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"requirement_id"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"/"},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"evidence_type"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"/"},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"attachment_type"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" combination is not a valid KYC requirement for this customer"},"children":[]}]}]}],"invalid_file_format":"File format is not supported (expected PDF, JPEG, or PNG)"}}}},"id":"schema_30"},"schema_31":{"kind":"json-schema","data":{"type":"object","required":["bank_account"],"properties":{"bank_account":{"$ref":"#/components/schemas/CustomerBankAccountRequest"}}},"id":"schema_31"},"schema_32":{"kind":"json-schema","data":{"type":"object","required":["type","title","status","detail","code"],"properties":{"type":{"type":"string","const":"https://docs.dinie.com/errors/validation-failed"},"title":{"type":"string","const":"Validation Failed"},"status":{"type":"integer","const":422},"detail":{"type":"string"},"code":{"type":"string","enum":["validation_failed","no_user"],"x-enumDescriptions":{"validation_failed":"One or more bank account fields are invalid","no_user":"The customer has no confirmed user account"}}}},"id":"schema_32"},"schema_33":{"kind":"json-schema","data":{"type":"object","required":["data"],"properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/Bank"}}}},"id":"schema_33"},"schema_34":{"kind":"json-schema","data":{"type":"object","properties":{"return_url":{"type":"string","format":"uri","description":"URL the customer-facing app returns the user to when the flow finishes"}}},"id":"schema_34"},"schema_35":{"kind":"json-schema","data":{"type":"object","required":["type","title","status","detail","code"],"properties":{"type":{"type":"string","const":"https://docs.dinie.com/errors/conflict"},"title":{"type":"string","const":"Conflict"},"status":{"type":"integer","const":409},"detail":{"type":"string"},"code":{"type":"string","const":"session_already_active","x-enumDescriptions":{"session_already_active":"A biometrics session is already active for this customer"}}}},"id":"schema_35"},"schema_36":{"kind":"json-schema","data":{"type":"object","required":["type","title","status","detail","code"],"properties":{"type":{"type":"string","const":"https://docs.dinie.com/errors/validation-failed"},"title":{"type":"string","const":"Validation Failed"},"status":{"type":"integer","const":422},"detail":{"type":"string"},"code":{"type":"string","const":"biometrics_not_required","x-enumDescriptions":{"biometrics_not_required":"Customer does not have pending biometrics KYC requirements"}}}},"id":"schema_36"},"schema_37":{"kind":"json-schema","data":{"$ref":"#/components/schemas/EventId"},"id":"schema_37"},"schema_38":{"kind":"json-schema","data":{"type":"integer"},"id":"schema_38"},"schema_39":{"kind":"json-schema","data":{"type":"string","enum":["available","accepted","expired"]},"id":"schema_39"},"schema_40":{"kind":"json-schema","data":{"type":"object","required":["data","has_more"],"properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/CreditOffer"}},"has_more":{"type":"boolean"}}},"id":"schema_40"},"schema_41":{"kind":"json-schema","data":{"type":"object","required":["type","title","status","detail","code"],"properties":{"type":{"type":"string","const":"https://docs.dinie.com/errors/invalid-request"},"title":{"type":"string","const":"Invalid Request"},"status":{"type":"integer","const":400},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_limit","invalid_cursor"],"x-enumDescriptions":{"invalid_limit":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"limit"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" is not a valid integer or is outside 1–100 range"},"children":[]}]}]}],"invalid_cursor":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"starting_after"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" references a non-existent or inaccessible credit offer"},"children":[]}]}]}]}}}},"id":"schema_41"},"schema_42":{"kind":"json-schema","data":{"type":"object","required":["type","title","status","detail","code"],"properties":{"type":{"type":"string","const":"https://docs.dinie.com/errors/not-found"},"title":{"type":"string","const":"Not Found"},"status":{"type":"integer","const":404},"detail":{"type":"string"},"code":{"type":"string","const":"customer_not_found","x-enumDescriptions":{"customer_not_found":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"customer_id"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" filter references a non-existent or inaccessible customer"},"children":[]}]}]}]}}}},"id":"schema_42"},"schema_43":{"kind":"json-schema","data":{"$ref":"#/components/schemas/CreditOfferId"},"id":"schema_43"},"schema_44":{"kind":"json-schema","data":{"type":"object","required":["type","title","status","detail","code"],"properties":{"type":{"type":"string","const":"https://docs.dinie.com/errors/not-found"},"title":{"type":"string","const":"Not Found"},"status":{"type":"integer","const":404},"detail":{"type":"string"},"code":{"type":"string","const":"credit_offer_not_found","x-enumDescriptions":{"credit_offer_not_found":"Credit offer ID does not exist or does not belong to this partner"}}}},"id":"schema_44"},"schema_45":{"kind":"json-schema","data":{"type":"object","required":["type","title","status","detail","code"],"properties":{"type":{"type":"string","const":"https://docs.dinie.com/errors/validation-failed"},"title":{"type":"string","const":"Validation Failed"},"status":{"type":"integer","const":422},"detail":{"type":"string"},"code":{"type":"string","enum":["offer_expired","offer_already_accepted","invalid_amount","invalid_installments"],"x-enumDescriptions":{"offer_expired":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Credit offer status is "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"expired"},"children":[]}]}]}],"offer_already_accepted":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Credit offer status is "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"accepted"},"children":[]}]}]}],"invalid_amount":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"requested_amount"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" exceeds "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"approved_amount"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", is below "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"min_amount"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", or is not a valid monetary value"},"children":[]}]}]}],"invalid_installments":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"installment_count"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" is outside the allowed range"},"children":[]}]}]}]}}}},"id":"schema_45"},"schema_46":{"kind":"json-schema","data":{"type":"object","required":["type","title","status","detail","code"],"properties":{"type":{"type":"string","const":"https://docs.dinie.com/errors/not-found"},"title":{"type":"string","const":"Not Found"},"status":{"type":"integer","const":404},"detail":{"type":"string"},"code":{"type":"string","const":"credit_offer_not_found","x-enumDescriptions":{"credit_offer_not_found":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"credit_offer_id"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" does not exist or does not belong to this partner"},"children":[]}]}]}]}}}},"id":"schema_46"},"schema_47":{"kind":"json-schema","data":{"type":"object","required":["type","title","status","detail","code"],"properties":{"type":{"type":"string","const":"https://docs.dinie.com/errors/conflict"},"title":{"type":"string","const":"Conflict"},"status":{"type":"integer","const":409},"detail":{"type":"string"},"code":{"type":"string","enum":["offer_already_accepted","withdrawal_locked"],"x-enumDescriptions":{"offer_already_accepted":"A loan already exists for this credit offer","withdrawal_locked":"Another withdrawal is being processed for this customer (concurrent lock)"}}}},"id":"schema_47"},"schema_48":{"kind":"json-schema","data":{"type":"object","required":["type","title","status","detail","code"],"properties":{"type":{"type":"string","const":"https://docs.dinie.com/errors/validation-failed"},"title":{"type":"string","const":"Validation Failed"},"status":{"type":"integer","const":422},"detail":{"type":"string"},"code":{"type":"string","enum":["missing_required_field","offer_expired","kyc_incomplete","invalid_amount","invalid_installments","simulation_mismatch"],"x-enumDescriptions":{"missing_required_field":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Required field is missing ("},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"credit_offer_id"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"simulation_id"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"installment_count"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"installment_amount"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"first_due_date"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":")"},"children":[]}]}]}],"offer_expired":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Credit offer has expired ("},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"valid_until"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" has passed or superseded)"},"children":[]}]}]}],"kyc_incomplete":"Customer has pending or rejected KYC requirements","invalid_amount":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"amount"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" exceeds "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"approved_amount"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" or is not a valid monetary value"},"children":[]}]}]}],"invalid_installments":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"installment_count"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" is outside the allowed range"},"children":[]}]}]}],"simulation_mismatch":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"installment_count"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"installment_amount"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", or "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"first_due_date"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" do not match the referenced simulation"},"children":[]}]}]}]}}}},"id":"schema_48"},"schema_49":{"kind":"json-schema","data":{"$ref":"#/components/schemas/LoanId"},"id":"schema_49"},"schema_50":{"kind":"json-schema","data":{"type":"object","required":["type","title","status","detail","code"],"properties":{"type":{"type":"string","const":"https://docs.dinie.com/errors/not-found"},"title":{"type":"string","const":"Not Found"},"status":{"type":"integer","const":404},"detail":{"type":"string"},"code":{"type":"string","const":"loan_not_found","x-enumDescriptions":{"loan_not_found":"Loan ID does not exist or does not belong to this partner"}}}},"id":"schema_50"},"schema_51":{"kind":"json-schema","data":{"type":"object","required":["data","has_more"],"properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/Transaction"}},"has_more":{"type":"boolean"}}},"id":"schema_51"},"schema_52":{"kind":"json-schema","data":{"type":"object","required":["type","title","status","detail","code"],"properties":{"type":{"type":"string","const":"https://docs.dinie.com/errors/invalid-request"},"title":{"type":"string","const":"Invalid Request"},"status":{"type":"integer","const":400},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_limit","invalid_cursor"],"x-enumDescriptions":{"invalid_limit":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"limit"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" is not a valid integer or is outside 1–100 range"},"children":[]}]}]}],"invalid_cursor":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"starting_after"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" references a non-existent transaction"},"children":[]}]}]}]}}}},"id":"schema_52"},"schema_53":{"kind":"json-schema","data":{"type":"object","required":["type","title","status","detail","code"],"properties":{"type":{"type":"string","const":"https://docs.dinie.com/errors/validation-failed"},"title":{"type":"string","const":"Validation Failed"},"status":{"type":"integer","const":422},"detail":{"type":"string"},"code":{"type":"string","enum":["missing_required_field","invalid_url","invalid_events"],"x-enumDescriptions":{"missing_required_field":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"url"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" is missing"},"children":[]}]}]}],"invalid_url":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"url"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" is not a valid HTTPS URL"},"children":[]}]}]}],"invalid_events":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"events"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" contains unrecognized event types"},"children":[]}]}]}]}}}},"id":"schema_53"},"schema_54":{"kind":"json-schema","data":{"type":"object","required":["data","has_more"],"properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/WebhookEndpoint"}},"has_more":{"type":"boolean"}}},"id":"schema_54"},"schema_55":{"kind":"json-schema","data":{"$ref":"#/components/schemas/WebhookEndpointId"},"id":"schema_55"},"schema_56":{"kind":"json-schema","data":{"type":"object","required":["type","title","status","detail","code"],"properties":{"type":{"type":"string","const":"https://docs.dinie.com/errors/not-found"},"title":{"type":"string","const":"Not Found"},"status":{"type":"integer","const":404},"detail":{"type":"string"},"code":{"type":"string","const":"webhook_endpoint_not_found","x-enumDescriptions":{"webhook_endpoint_not_found":"Endpoint ID does not exist or does not belong to this partner"}}}},"id":"schema_56"},"schema_57":{"kind":"json-schema","data":{"type":"object","required":["type","title","status","detail","code"],"properties":{"type":{"type":"string","const":"https://docs.dinie.com/errors/validation-failed"},"title":{"type":"string","const":"Validation Failed"},"status":{"type":"integer","const":422},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_url","invalid_events","invalid_status"],"x-enumDescriptions":{"invalid_url":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"url"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" is not a valid HTTPS URL"},"children":[]}]}]}],"invalid_events":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"events"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" contains unrecognized event types"},"children":[]}]}]}],"invalid_status":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"status"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" is not "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"active"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" or "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"disabled"},"children":[]}]}]}]}}}},"id":"schema_57"},"schema_58":{"kind":"json-schema","data":{"type":"object","properties":{"expire_current_in":{"type":"integer","description":"Seconds until the current secret expires. Default 3600. Max 86400","default":3600,"minimum":0,"maximum":86400}}},"id":"schema_58"},"schema_59":{"kind":"json-schema","data":{"type":"object","required":["type","title","status","detail","code"],"properties":{"type":{"type":"string","const":"https://docs.dinie.com/errors/invalid-request"},"title":{"type":"string","const":"Invalid Request"},"status":{"type":"integer","const":400},"detail":{"type":"string"},"code":{"type":"string","const":"invalid_content_type","x-enumDescriptions":{"invalid_content_type":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Content-Type"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" is not "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"application/json"},"children":[]}]}]}]}}}},"id":"schema_59"},"schema_60":{"kind":"json-schema","data":{"type":"object","required":["type","title","status","detail","code"],"properties":{"type":{"type":"string","const":"https://docs.dinie.com/errors/validation-failed"},"title":{"type":"string","const":"Validation Failed"},"status":{"type":"integer","const":422},"detail":{"type":"string"},"code":{"type":"string","const":"invalid_expire_current_in","x-enumDescriptions":{"invalid_expire_current_in":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"expire_current_in"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" is outside the 0–86400 range"},"children":[]}]}]}]}}}},"id":"schema_60"},"schema_61":{"kind":"json-schema","data":{"$ref":"#/components/schemas/WebhookDeliveryId"},"id":"schema_61"},"schema_62":{"kind":"json-schema","data":{"type":"object","required":["data","has_more"],"properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/WebhookDelivery"}},"has_more":{"type":"boolean"}}},"id":"schema_62"},"schema_63":{"kind":"json-schema","data":{"type":"object","required":["type","title","status","detail","code"],"properties":{"type":{"type":"string","const":"https://docs.dinie.com/errors/not-found"},"title":{"type":"string","const":"Not Found"},"status":{"type":"integer","const":404},"detail":{"type":"string"},"code":{"type":"string","const":"not_found"}}},"id":"schema_63"},"schema_64":{"kind":"json-schema","data":{"type":"object","required":["type","title","status","detail","code"],"properties":{"type":{"type":"string","const":"https://docs.dinie.com/errors/conflict"},"title":{"type":"string","const":"Conflict"},"status":{"type":"integer","const":409},"detail":{"type":"string"},"code":{"type":"string","const":"delivery_not_retryable"}}},"id":"schema_64"}},"exampleStore":{"paths/~1auth~1token/post/requestBody/content/application~1x-www-form-urlencoded/example":{"value":{"grant_type":"client_credentials"},"id":"paths/~1auth~1token/post/requestBody/content/application~1x-www-form-urlencoded/example"},"paths/~1auth~1token/post/responses/200/content/application~1json/example":{"value":{"access_token":"dinie_at_eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJkaW5pZV9jaV81NTBlODQwMGUyOWI0MWQ0YTcxNjQ0NjY1NTQ0MDAwMCIsImV4cCI6MTcwOTU1NTYwMH0.abc123","token_type":"bearer","expires_in":3600},"id":"paths/~1auth~1token/post/responses/200/content/application~1json/example"},"paths/~1auth~1token/post/responses/400/content/application~1problem+json/examples/missing_grant_type":{"value":{"type":"https://docs.dinie.com/errors/invalid-request","title":"Invalid Request","status":400,"detail":"`grant_type` parameter is missing","code":"missing_grant_type"},"key":"missing_grant_type","summary":"`grant_type` parameter is missing","id":"paths/~1auth~1token/post/responses/400/content/application~1problem+json/examples/missing_grant_type"},"paths/~1auth~1token/post/responses/400/content/application~1problem+json/examples/unsupported_grant_type":{"value":{"type":"https://docs.dinie.com/errors/invalid-request","title":"Invalid Request","status":400,"detail":"`grant_type` is not `client_credentials`","code":"unsupported_grant_type"},"key":"unsupported_grant_type","summary":"`grant_type` is not `client_credentials`","id":"paths/~1auth~1token/post/responses/400/content/application~1problem+json/examples/unsupported_grant_type"},"paths/~1auth~1token/post/responses/400/content/application~1problem+json/examples/invalid_content_type":{"value":{"type":"https://docs.dinie.com/errors/invalid-request","title":"Invalid Request","status":400,"detail":"`Content-Type` is not `application/x-www-form-urlencoded`","code":"invalid_content_type"},"key":"invalid_content_type","summary":"`Content-Type` is not `application/x-www-form-urlencoded`","id":"paths/~1auth~1token/post/responses/400/content/application~1problem+json/examples/invalid_content_type"},"paths/~1auth~1token/post/responses/401/content/application~1problem+json/examples/missing_authorization":{"value":{"type":"https://docs.dinie.com/errors/authentication-failed","title":"Authentication Failed","status":401,"detail":"Missing client credentials","code":"missing_authorization"},"key":"missing_authorization","summary":"Missing client credentials","id":"paths/~1auth~1token/post/responses/401/content/application~1problem+json/examples/missing_authorization"},"paths/~1auth~1token/post/responses/401/content/application~1problem+json/examples/invalid_client":{"value":{"type":"https://docs.dinie.com/errors/authentication-failed","title":"Authentication Failed","status":401,"detail":"`client_id` does not exist","code":"invalid_client"},"key":"invalid_client","summary":"`client_id` does not exist","id":"paths/~1auth~1token/post/responses/401/content/application~1problem+json/examples/invalid_client"},"paths/~1auth~1token/post/responses/401/content/application~1problem+json/examples/invalid_client_secret":{"value":{"type":"https://docs.dinie.com/errors/authentication-failed","title":"Authentication Failed","status":401,"detail":"`client_secret` does not match","code":"invalid_client_secret"},"key":"invalid_client_secret","summary":"`client_secret` does not match","id":"paths/~1auth~1token/post/responses/401/content/application~1problem+json/examples/invalid_client_secret"},"paths/~1auth~1token/post/responses/401/content/application~1problem+json/examples/credential_revoked":{"value":{"type":"https://docs.dinie.com/errors/authentication-failed","title":"Authentication Failed","status":401,"detail":"Credential has been revoked","code":"credential_revoked"},"key":"credential_revoked","summary":"Credential has been revoked","id":"paths/~1auth~1token/post/responses/401/content/application~1problem+json/examples/credential_revoked"},"paths/~1auth~1token/post/responses/401/content/application~1problem+json/examples/credential_expired":{"value":{"type":"https://docs.dinie.com/errors/authentication-failed","title":"Authentication Failed","status":401,"detail":"Credential has passed its `expires_at`","code":"credential_expired"},"key":"credential_expired","summary":"Credential has passed its `expires_at`","id":"paths/~1auth~1token/post/responses/401/content/application~1problem+json/examples/credential_expired"},"paths/~1auth~1token/post/responses/429/content/application~1problem+json/example":{"value":{"type":"https://docs.dinie.com/errors/rate-limit-exceeded","title":"Rate Limit Exceeded","status":429,"detail":"Too many requests. Retry after 30 seconds."},"id":"paths/~1auth~1token/post/responses/429/content/application~1problem+json/example"},"paths/~1auth~1token/post/responses/500/content/application~1problem+json/example":{"value":{"type":"https://docs.dinie.com/errors/internal","title":"Internal Error","status":500,"detail":"An unexpected error occurred."},"id":"paths/~1auth~1token/post/responses/500/content/application~1problem+json/example"},"paths/~1auth~1credentials/post/requestBody/content/application~1json/example":{"value":{"name":"Chave de Produção","expires_at":1803945600},"id":"paths/~1auth~1credentials/post/requestBody/content/application~1json/example"},"paths/~1auth~1credentials/post/responses/201/content/application~1json/example":{"value":{"id":"dinie_ci_live_550e8400e29b41d4a71644","client_id":"dinie_ci_live_550e8400e29b41d4a71644","name":"Chave de Produção","status":"active","client_secret":"dinie_cs_live_a1b2c3d4e5f6g7h8i9j0k1l2m3n4o5p6","expires_at":1803945600,"created_at":1772791200,"updated_at":1772877600,"last_used_at":null},"id":"paths/~1auth~1credentials/post/responses/201/content/application~1json/example"},"paths/~1auth~1credentials/post/responses/400/content/application~1problem+json/examples/invalid_content_type":{"value":{"type":"https://docs.dinie.com/errors/invalid-request","title":"Invalid Request","status":400,"detail":"`Content-Type` is not `application/json`","code":"invalid_content_type"},"key":"invalid_content_type","summary":"`Content-Type` is not `application/json`","id":"paths/~1auth~1credentials/post/responses/400/content/application~1problem+json/examples/invalid_content_type"},"paths/~1auth~1credentials/post/responses/400/content/application~1problem+json/examples/malformed_body":{"value":{"type":"https://docs.dinie.com/errors/invalid-request","title":"Invalid Request","status":400,"detail":"Request body is not valid JSON","code":"malformed_body"},"key":"malformed_body","summary":"Request body is not valid JSON","id":"paths/~1auth~1credentials/post/responses/400/content/application~1problem+json/examples/malformed_body"},"paths/~1auth~1credentials/post/responses/401/content/application~1problem+json/examples/missing_token":{"value":{"type":"https://docs.dinie.com/errors/authentication-failed","title":"Authentication Failed","status":401,"detail":"Authorization header is missing","code":"missing_token"},"key":"missing_token","summary":"Authorization header is missing","id":"paths/~1auth~1credentials/post/responses/401/content/application~1problem+json/examples/missing_token"},"paths/~1auth~1credentials/post/responses/401/content/application~1problem+json/examples/invalid_token":{"value":{"type":"https://docs.dinie.com/errors/authentication-failed","title":"Authentication Failed","status":401,"detail":"Bearer token is invalid or malformed","code":"invalid_token"},"key":"invalid_token","summary":"Bearer token is invalid or malformed","id":"paths/~1auth~1credentials/post/responses/401/content/application~1problem+json/examples/invalid_token"},"paths/~1auth~1credentials/post/responses/401/content/application~1problem+json/examples/token_expired":{"value":{"type":"https://docs.dinie.com/errors/authentication-failed","title":"Authentication Failed","status":401,"detail":"Bearer token has expired","code":"token_expired"},"key":"token_expired","summary":"Bearer token has expired","id":"paths/~1auth~1credentials/post/responses/401/content/application~1problem+json/examples/token_expired"},"paths/~1auth~1credentials/post/responses/422/content/application~1problem+json/examples/missing_required_field":{"value":{"type":"https://docs.dinie.com/errors/validation-failed","title":"Validation Failed","status":422,"detail":"`name` is missing","code":"missing_required_field"},"key":"missing_required_field","summary":"`name` is missing","id":"paths/~1auth~1credentials/post/responses/422/content/application~1problem+json/examples/missing_required_field"},"paths/~1auth~1credentials/post/responses/429/content/application~1problem+json/example":{"value":{"type":"https://docs.dinie.com/errors/rate-limit-exceeded","title":"Rate Limit Exceeded","status":429,"detail":"Too many requests. Retry after 30 seconds."},"id":"paths/~1auth~1credentials/post/responses/429/content/application~1problem+json/example"},"paths/~1auth~1credentials/post/responses/500/content/application~1problem+json/example":{"value":{"type":"https://docs.dinie.com/errors/internal","title":"Internal Error","status":500,"detail":"An unexpected error occurred."},"id":"paths/~1auth~1credentials/post/responses/500/content/application~1problem+json/example"},"paths/~1auth~1credentials/get/responses/200/content/application~1json/example":{"value":{"data":[{"id":"dinie_ci_live_550e8400e29b41d4a71644","client_id":"dinie_ci_live_550e8400e29b41d4a71644","name":"Chave de Produção","status":"active","expires_at":1803945600,"created_at":1772791200,"updated_at":1772877600,"last_used_at":1772877600}],"has_more":false},"id":"paths/~1auth~1credentials/get/responses/200/content/application~1json/example"},"paths/~1auth~1credentials/get/responses/401/content/application~1problem+json/examples/missing_token":{"value":{"type":"https://docs.dinie.com/errors/authentication-failed","title":"Authentication Failed","status":401,"detail":"Authorization header is missing","code":"missing_token"},"key":"missing_token","summary":"Authorization header is missing","id":"paths/~1auth~1credentials/get/responses/401/content/application~1problem+json/examples/missing_token"},"paths/~1auth~1credentials/get/responses/401/content/application~1problem+json/examples/invalid_token":{"value":{"type":"https://docs.dinie.com/errors/authentication-failed","title":"Authentication Failed","status":401,"detail":"Bearer token is invalid or malformed","code":"invalid_token"},"key":"invalid_token","summary":"Bearer token is invalid or malformed","id":"paths/~1auth~1credentials/get/responses/401/content/application~1problem+json/examples/invalid_token"},"paths/~1auth~1credentials/get/responses/401/content/application~1problem+json/examples/token_expired":{"value":{"type":"https://docs.dinie.com/errors/authentication-failed","title":"Authentication Failed","status":401,"detail":"Bearer token has expired","code":"token_expired"},"key":"token_expired","summary":"Bearer token has expired","id":"paths/~1auth~1credentials/get/responses/401/content/application~1problem+json/examples/token_expired"},"paths/~1auth~1credentials/get/responses/429/content/application~1problem+json/example":{"value":{"type":"https://docs.dinie.com/errors/rate-limit-exceeded","title":"Rate Limit Exceeded","status":429,"detail":"Too many requests. Retry after 30 seconds."},"id":"paths/~1auth~1credentials/get/responses/429/content/application~1problem+json/example"},"paths/~1auth~1credentials/get/responses/500/content/application~1problem+json/example":{"value":{"type":"https://docs.dinie.com/errors/internal","title":"Internal Error","status":500,"detail":"An unexpected error occurred."},"id":"paths/~1auth~1credentials/get/responses/500/content/application~1problem+json/example"},"paths/~1auth~1credentials~1{client_id}/delete/responses/401/content/application~1problem+json/examples/missing_token":{"value":{"type":"https://docs.dinie.com/errors/authentication-failed","title":"Authentication Failed","status":401,"detail":"Authorization header is missing","code":"missing_token"},"key":"missing_token","summary":"Authorization header is missing","id":"paths/~1auth~1credentials~1{client_id}/delete/responses/401/content/application~1problem+json/examples/missing_token"},"paths/~1auth~1credentials~1{client_id}/delete/responses/401/content/application~1problem+json/examples/invalid_token":{"value":{"type":"https://docs.dinie.com/errors/authentication-failed","title":"Authentication Failed","status":401,"detail":"Bearer token is invalid or malformed","code":"invalid_token"},"key":"invalid_token","summary":"Bearer token is invalid or malformed","id":"paths/~1auth~1credentials~1{client_id}/delete/responses/401/content/application~1problem+json/examples/invalid_token"},"paths/~1auth~1credentials~1{client_id}/delete/responses/401/content/application~1problem+json/examples/token_expired":{"value":{"type":"https://docs.dinie.com/errors/authentication-failed","title":"Authentication Failed","status":401,"detail":"Bearer token has expired","code":"token_expired"},"key":"token_expired","summary":"Bearer token has expired","id":"paths/~1auth~1credentials~1{client_id}/delete/responses/401/content/application~1problem+json/examples/token_expired"},"paths/~1auth~1credentials~1{client_id}/delete/responses/404/content/application~1problem+json/examples/credential_not_found":{"value":{"type":"https://docs.dinie.com/errors/not-found","title":"Not Found","status":404,"detail":"`client_id` does not exist or does not belong to this partner","code":"credential_not_found"},"key":"credential_not_found","summary":"`client_id` does not exist or does not belong to this partner","id":"paths/~1auth~1credentials~1{client_id}/delete/responses/404/content/application~1problem+json/examples/credential_not_found"},"paths/~1auth~1credentials~1{client_id}/delete/responses/409/content/application~1problem+json/examples/last_active_credential":{"value":{"type":"https://docs.dinie.com/errors/conflict","title":"Conflict","status":409,"detail":"Cannot revoke the last active credential","code":"last_active_credential"},"key":"last_active_credential","summary":"Cannot revoke the last active credential","id":"paths/~1auth~1credentials~1{client_id}/delete/responses/409/content/application~1problem+json/examples/last_active_credential"},"paths/~1auth~1credentials~1{client_id}/delete/responses/429/content/application~1problem+json/example":{"value":{"type":"https://docs.dinie.com/errors/rate-limit-exceeded","title":"Rate Limit Exceeded","status":429,"detail":"Too many requests. Retry after 30 seconds."},"id":"paths/~1auth~1credentials~1{client_id}/delete/responses/429/content/application~1problem+json/example"},"paths/~1auth~1credentials~1{client_id}/delete/responses/500/content/application~1problem+json/example":{"value":{"type":"https://docs.dinie.com/errors/internal","title":"Internal Error","status":500,"detail":"An unexpected error occurred."},"id":"paths/~1auth~1credentials~1{client_id}/delete/responses/500/content/application~1problem+json/example"},"paths/~1customers/post/requestBody/content/application~1json/example":{"value":{"cpf":"123.456.789-00","cnpj":"12.345.678/0001-90","email":"joao@example.com","phone":"+5511999999999","external_id":"partner-ref-123"},"id":"paths/~1customers/post/requestBody/content/application~1json/example"},"paths/~1customers/post/responses/201/content/application~1json/example":{"value":{"id":"cust_550e8400e29b41d4a716446655440000","status":"creating","cpf":"123.456.789-00","cnpj":"12.345.678/0001-90","name":null,"email":"joao@example.com","phone":"+5511999999999","trading_name":null,"external_id":"partner-ref-123","created_at":1709546400,"updated_at":1709632800},"id":"paths/~1customers/post/responses/201/content/application~1json/example"},"paths/~1customers/post/responses/400/content/application~1problem+json/examples/invalid_content_type":{"value":{"type":"https://docs.dinie.com/errors/invalid-request","title":"Invalid Request","status":400,"detail":"`Content-Type` is not `application/json`","code":"invalid_content_type"},"key":"invalid_content_type","summary":"`Content-Type` is not `application/json`","id":"paths/~1customers/post/responses/400/content/application~1problem+json/examples/invalid_content_type"},"paths/~1customers/post/responses/400/content/application~1problem+json/examples/malformed_body":{"value":{"type":"https://docs.dinie.com/errors/invalid-request","title":"Invalid Request","status":400,"detail":"Request body is not valid JSON","code":"malformed_body"},"key":"malformed_body","summary":"Request body is not valid JSON","id":"paths/~1customers/post/responses/400/content/application~1problem+json/examples/malformed_body"},"paths/~1customers/post/responses/401/content/application~1problem+json/examples/missing_token":{"value":{"type":"https://docs.dinie.com/errors/authentication-failed","title":"Authentication Failed","status":401,"detail":"Authorization header is missing","code":"missing_token"},"key":"missing_token","summary":"Authorization header is missing","id":"paths/~1customers/post/responses/401/content/application~1problem+json/examples/missing_token"},"paths/~1customers/post/responses/401/content/application~1problem+json/examples/invalid_token":{"value":{"type":"https://docs.dinie.com/errors/authentication-failed","title":"Authentication Failed","status":401,"detail":"Bearer token is invalid or malformed","code":"invalid_token"},"key":"invalid_token","summary":"Bearer token is invalid or malformed","id":"paths/~1customers/post/responses/401/content/application~1problem+json/examples/invalid_token"},"paths/~1customers/post/responses/401/content/application~1problem+json/examples/token_expired":{"value":{"type":"https://docs.dinie.com/errors/authentication-failed","title":"Authentication Failed","status":401,"detail":"Bearer token has expired","code":"token_expired"},"key":"token_expired","summary":"Bearer token has expired","id":"paths/~1customers/post/responses/401/content/application~1problem+json/examples/token_expired"},"paths/~1customers/post/responses/409/content/application~1problem+json/examples/customer_already_exists":{"value":{"type":"https://docs.dinie.com/errors/conflict","title":"Conflict","status":409,"detail":"Same CPF/CNPJ already registered under this partner with a different `external_id`","code":"customer_already_exists"},"key":"customer_already_exists","summary":"Same CPF/CNPJ already registered under this partner with a different `external_id`","id":"paths/~1customers/post/responses/409/content/application~1problem+json/examples/customer_already_exists"},"paths/~1customers/post/responses/422/content/application~1problem+json/examples/missing_required_field":{"value":{"type":"https://docs.dinie.com/errors/validation-failed","title":"Validation Failed","status":422,"detail":"`cpf` is missing (required for all customers)","code":"missing_required_field"},"key":"missing_required_field","summary":"`cpf` is missing (required for all customers)","id":"paths/~1customers/post/responses/422/content/application~1problem+json/examples/missing_required_field"},"paths/~1customers/post/responses/422/content/application~1problem+json/examples/invalid_cpf":{"value":{"type":"https://docs.dinie.com/errors/validation-failed","title":"Validation Failed","status":422,"detail":"CPF fails check-digit validation","code":"invalid_cpf"},"key":"invalid_cpf","summary":"CPF fails check-digit validation","id":"paths/~1customers/post/responses/422/content/application~1problem+json/examples/invalid_cpf"},"paths/~1customers/post/responses/422/content/application~1problem+json/examples/invalid_cnpj":{"value":{"type":"https://docs.dinie.com/errors/validation-failed","title":"Validation Failed","status":422,"detail":"CNPJ fails check-digit validation","code":"invalid_cnpj"},"key":"invalid_cnpj","summary":"CNPJ fails check-digit validation","id":"paths/~1customers/post/responses/422/content/application~1problem+json/examples/invalid_cnpj"},"paths/~1customers/post/responses/422/content/application~1problem+json/examples/invalid_email":{"value":{"type":"https://docs.dinie.com/errors/validation-failed","title":"Validation Failed","status":422,"detail":"Email format is invalid","code":"invalid_email"},"key":"invalid_email","summary":"Email format is invalid","id":"paths/~1customers/post/responses/422/content/application~1problem+json/examples/invalid_email"},"paths/~1customers/post/responses/422/content/application~1problem+json/examples/invalid_phone":{"value":{"type":"https://docs.dinie.com/errors/validation-failed","title":"Validation Failed","status":422,"detail":"Phone format is invalid (expected E.164 with +55 country code)","code":"invalid_phone"},"key":"invalid_phone","summary":"Phone format is invalid (expected E.164 with +55 country code)","id":"paths/~1customers/post/responses/422/content/application~1problem+json/examples/invalid_phone"},"paths/~1customers/post/responses/429/content/application~1problem+json/example":{"value":{"type":"https://docs.dinie.com/errors/rate-limit-exceeded","title":"Rate Limit Exceeded","status":429,"detail":"Too many requests. Retry after 30 seconds."},"id":"paths/~1customers/post/responses/429/content/application~1problem+json/example"},"paths/~1customers/post/responses/500/content/application~1problem+json/example":{"value":{"type":"https://docs.dinie.com/errors/internal","title":"Internal Error","status":500,"detail":"An unexpected error occurred."},"id":"paths/~1customers/post/responses/500/content/application~1problem+json/example"},"paths/~1customers/get/responses/200/content/application~1json/example":{"value":{"data":[{"id":"cust_550e8400e29b41d4a716446655440000","status":"active","cpf":"123.456.789-00","cnpj":"12.345.678/0001-90","name":"João Silva","email":"joao@example.com","phone":"+5511999999999","trading_name":"Loja do João","external_id":"partner-ref-123","kyc":[],"created_at":1709546400,"updated_at":1709632800},{"id":"cust_660e8400e29b41d4a716446655440001","status":"pending_kyc","cpf":"987.654.321-00","cnpj":null,"name":"Maria Santos","email":"maria@example.com","phone":"+5511988888888","trading_name":null,"external_id":"partner-ref-456","kyc":[],"created_at":1709625600,"updated_at":1709625600}],"has_more":true},"id":"paths/~1customers/get/responses/200/content/application~1json/example"},"paths/~1customers/get/responses/400/content/application~1problem+json/examples/invalid_limit":{"value":{"type":"https://docs.dinie.com/errors/invalid-request","title":"Invalid Request","status":400,"detail":"`limit` is not a valid integer or is outside 1–100 range","code":"invalid_limit"},"key":"invalid_limit","summary":"`limit` is not a valid integer or is outside 1–100 range","id":"paths/~1customers/get/responses/400/content/application~1problem+json/examples/invalid_limit"},"paths/~1customers/get/responses/400/content/application~1problem+json/examples/invalid_sort":{"value":{"type":"https://docs.dinie.com/errors/invalid-request","title":"Invalid Request","status":400,"detail":"`sort` value is not one of the supported fields","code":"invalid_sort"},"key":"invalid_sort","summary":"`sort` value is not one of the supported fields","id":"paths/~1customers/get/responses/400/content/application~1problem+json/examples/invalid_sort"},"paths/~1customers/get/responses/400/content/application~1problem+json/examples/invalid_order":{"value":{"type":"https://docs.dinie.com/errors/invalid-request","title":"Invalid Request","status":400,"detail":"`order` value is not `asc` or `desc`","code":"invalid_order"},"key":"invalid_order","summary":"`order` value is not `asc` or `desc`","id":"paths/~1customers/get/responses/400/content/application~1problem+json/examples/invalid_order"},"paths/~1customers/get/responses/400/content/application~1problem+json/examples/invalid_cursor":{"value":{"type":"https://docs.dinie.com/errors/invalid-request","title":"Invalid Request","status":400,"detail":"`starting_after` references a non-existent or inaccessible customer","code":"invalid_cursor"},"key":"invalid_cursor","summary":"`starting_after` references a non-existent or inaccessible customer","id":"paths/~1customers/get/responses/400/content/application~1problem+json/examples/invalid_cursor"},"paths/~1customers/get/responses/401/content/application~1problem+json/examples/missing_token":{"value":{"type":"https://docs.dinie.com/errors/authentication-failed","title":"Authentication Failed","status":401,"detail":"Authorization header is missing","code":"missing_token"},"key":"missing_token","summary":"Authorization header is missing","id":"paths/~1customers/get/responses/401/content/application~1problem+json/examples/missing_token"},"paths/~1customers/get/responses/401/content/application~1problem+json/examples/invalid_token":{"value":{"type":"https://docs.dinie.com/errors/authentication-failed","title":"Authentication Failed","status":401,"detail":"Bearer token is invalid or malformed","code":"invalid_token"},"key":"invalid_token","summary":"Bearer token is invalid or malformed","id":"paths/~1customers/get/responses/401/content/application~1problem+json/examples/invalid_token"},"paths/~1customers/get/responses/401/content/application~1problem+json/examples/token_expired":{"value":{"type":"https://docs.dinie.com/errors/authentication-failed","title":"Authentication Failed","status":401,"detail":"Bearer token has expired","code":"token_expired"},"key":"token_expired","summary":"Bearer token has expired","id":"paths/~1customers/get/responses/401/content/application~1problem+json/examples/token_expired"},"paths/~1customers/get/responses/429/content/application~1problem+json/example":{"value":{"type":"https://docs.dinie.com/errors/rate-limit-exceeded","title":"Rate Limit Exceeded","status":429,"detail":"Too many requests. Retry after 30 seconds."},"id":"paths/~1customers/get/responses/429/content/application~1problem+json/example"},"paths/~1customers/get/responses/500/content/application~1problem+json/example":{"value":{"type":"https://docs.dinie.com/errors/internal","title":"Internal Error","status":500,"detail":"An unexpected error occurred."},"id":"paths/~1customers/get/responses/500/content/application~1problem+json/example"},"paths/~1customers~1{customer_id}/get/responses/200/content/application~1json/example":{"value":{"id":"cust_550e8400e29b41d4a716446655440000","status":"active","cpf":"123.456.789-00","cnpj":"12.345.678/0001-90","name":"João Silva","email":"joao@example.com","phone":"+5511999999999","trading_name":"Loja do João","external_id":"partner-ref-123","kyc":[{"requirement_id":"identity_003XXXXXXXXXXXXXXX","requirement_type":"identity","label":"Documento de identidade","mandatory":true,"subject":{"id":"003XXXXXXXXXXXXXXX","name":"Joao Silva","subject_type":"applicant"},"submitted":{"evidence_type":"cnh","attachments":[{"attachment_type":"front","submitted":true},{"attachment_type":"back","submitted":true}],"review_status":"accepted","review_reason":null}},{"requirement_id":"company_document_001XXXXXXXXXXXXXXX","requirement_type":"company_document","label":"Documento da empresa","mandatory":true,"submitted":{"evidence_type":"ccmei","attachments":[{"attachment_type":"file","submitted":true}],"review_status":"accepted","review_reason":null}},{"requirement_id":"email_003YYYYYYYYYYYYYYY","requirement_type":"email","label":"Email do co-titular para assinatura da CCB","mandatory":true,"subject":{"id":"003YYYYYYYYYYYYYYY","name":"Maria Co-owner","subject_type":"co_owner"},"submitted":{"evidence_type":"email","attachments":[{"attachment_type":"email","submitted":true}],"review_status":"pending","review_reason":null}}],"created_at":1772791200,"updated_at":1772805600},"id":"paths/~1customers~1{customer_id}/get/responses/200/content/application~1json/example"},"paths/~1customers~1{customer_id}/get/responses/401/content/application~1problem+json/examples/missing_token":{"value":{"type":"https://docs.dinie.com/errors/authentication-failed","title":"Authentication Failed","status":401,"detail":"Authorization header is missing","code":"missing_token"},"key":"missing_token","summary":"Authorization header is missing","id":"paths/~1customers~1{customer_id}/get/responses/401/content/application~1problem+json/examples/missing_token"},"paths/~1customers~1{customer_id}/get/responses/401/content/application~1problem+json/examples/invalid_token":{"value":{"type":"https://docs.dinie.com/errors/authentication-failed","title":"Authentication Failed","status":401,"detail":"Bearer token is invalid or malformed","code":"invalid_token"},"key":"invalid_token","summary":"Bearer token is invalid or malformed","id":"paths/~1customers~1{customer_id}/get/responses/401/content/application~1problem+json/examples/invalid_token"},"paths/~1customers~1{customer_id}/get/responses/401/content/application~1problem+json/examples/token_expired":{"value":{"type":"https://docs.dinie.com/errors/authentication-failed","title":"Authentication Failed","status":401,"detail":"Bearer token has expired","code":"token_expired"},"key":"token_expired","summary":"Bearer token has expired","id":"paths/~1customers~1{customer_id}/get/responses/401/content/application~1problem+json/examples/token_expired"},"paths/~1customers~1{customer_id}/get/responses/403/content/application~1problem+json/examples/forbidden":{"value":{"type":"https://docs.dinie.com/errors/forbidden","title":"Forbidden","status":403,"detail":"Forbidden","code":"forbidden"},"key":"forbidden","summary":"The credential is not permitted to perform this action","id":"paths/~1customers~1{customer_id}/get/responses/403/content/application~1problem+json/examples/forbidden"},"paths/~1customers~1{customer_id}/get/responses/404/content/application~1problem+json/examples/customer_not_found":{"value":{"type":"https://docs.dinie.com/errors/not-found","title":"Not Found","status":404,"detail":"Customer ID does not exist or does not belong to this partner","code":"customer_not_found"},"key":"customer_not_found","summary":"Customer ID does not exist or does not belong to this partner","id":"paths/~1customers~1{customer_id}/get/responses/404/content/application~1problem+json/examples/customer_not_found"},"paths/~1customers~1{customer_id}/get/responses/429/content/application~1problem+json/example":{"value":{"type":"https://docs.dinie.com/errors/rate-limit-exceeded","title":"Rate Limit Exceeded","status":429,"detail":"Too many requests. Retry after 30 seconds."},"id":"paths/~1customers~1{customer_id}/get/responses/429/content/application~1problem+json/example"},"paths/~1customers~1{customer_id}/get/responses/500/content/application~1problem+json/example":{"value":{"type":"https://docs.dinie.com/errors/internal","title":"Internal Error","status":500,"detail":"An unexpected error occurred."},"id":"paths/~1customers~1{customer_id}/get/responses/500/content/application~1problem+json/example"},"paths/~1customers~1{customer_id}/patch/requestBody/content/application~1json/example":{"value":{"email":"joao.novo@example.com","phone":"+5511988887777"},"id":"paths/~1customers~1{customer_id}/patch/requestBody/content/application~1json/example"},"paths/~1customers~1{customer_id}/patch/responses/200/content/application~1json/example":{"value":{"id":"cust_550e8400e29b41d4a716446655440000","status":"active","cpf":"123.456.789-00","cnpj":"12.345.678/0001-90","name":"João Silva","email":"joao.novo@example.com","phone":"+5511988887777","trading_name":"Loja do João","external_id":"partner-ref-123","kyc":[],"created_at":1709546400,"updated_at":1709632800},"id":"paths/~1customers~1{customer_id}/patch/responses/200/content/application~1json/example"},"paths/~1customers~1{customer_id}/patch/responses/400/content/application~1problem+json/examples/invalid_content_type":{"value":{"type":"https://docs.dinie.com/errors/invalid-request","title":"Invalid Request","status":400,"detail":"`Content-Type` is not `application/json`","code":"invalid_content_type"},"key":"invalid_content_type","summary":"`Content-Type` is not `application/json`","id":"paths/~1customers~1{customer_id}/patch/responses/400/content/application~1problem+json/examples/invalid_content_type"},"paths/~1customers~1{customer_id}/patch/responses/400/content/application~1problem+json/examples/malformed_body":{"value":{"type":"https://docs.dinie.com/errors/invalid-request","title":"Invalid Request","status":400,"detail":"Request body is not valid JSON","code":"malformed_body"},"key":"malformed_body","summary":"Request body is not valid JSON","id":"paths/~1customers~1{customer_id}/patch/responses/400/content/application~1problem+json/examples/malformed_body"},"paths/~1customers~1{customer_id}/patch/responses/400/content/application~1problem+json/examples/empty_update":{"value":{"type":"https://docs.dinie.com/errors/invalid-request","title":"Invalid Request","status":400,"detail":"Request body contains no updatable fields","code":"empty_update"},"key":"empty_update","summary":"Request body contains no updatable fields","id":"paths/~1customers~1{customer_id}/patch/responses/400/content/application~1problem+json/examples/empty_update"},"paths/~1customers~1{customer_id}/patch/responses/401/content/application~1problem+json/examples/missing_token":{"value":{"type":"https://docs.dinie.com/errors/authentication-failed","title":"Authentication Failed","status":401,"detail":"Authorization header is missing","code":"missing_token"},"key":"missing_token","summary":"Authorization header is missing","id":"paths/~1customers~1{customer_id}/patch/responses/401/content/application~1problem+json/examples/missing_token"},"paths/~1customers~1{customer_id}/patch/responses/401/content/application~1problem+json/examples/invalid_token":{"value":{"type":"https://docs.dinie.com/errors/authentication-failed","title":"Authentication Failed","status":401,"detail":"Bearer token is invalid or malformed","code":"invalid_token"},"key":"invalid_token","summary":"Bearer token is invalid or malformed","id":"paths/~1customers~1{customer_id}/patch/responses/401/content/application~1problem+json/examples/invalid_token"},"paths/~1customers~1{customer_id}/patch/responses/401/content/application~1problem+json/examples/token_expired":{"value":{"type":"https://docs.dinie.com/errors/authentication-failed","title":"Authentication Failed","status":401,"detail":"Bearer token has expired","code":"token_expired"},"key":"token_expired","summary":"Bearer token has expired","id":"paths/~1customers~1{customer_id}/patch/responses/401/content/application~1problem+json/examples/token_expired"},"paths/~1customers~1{customer_id}/patch/responses/404/content/application~1problem+json/examples/customer_not_found":{"value":{"type":"https://docs.dinie.com/errors/not-found","title":"Not Found","status":404,"detail":"Customer ID does not exist or does not belong to this partner","code":"customer_not_found"},"key":"customer_not_found","summary":"Customer ID does not exist or does not belong to this partner","id":"paths/~1customers~1{customer_id}/patch/responses/404/content/application~1problem+json/examples/customer_not_found"},"paths/~1customers~1{customer_id}/patch/responses/422/content/application~1problem+json/examples/invalid_email":{"value":{"type":"https://docs.dinie.com/errors/validation-failed","title":"Validation Failed","status":422,"detail":"Email format is invalid","code":"invalid_email"},"key":"invalid_email","summary":"Email format is invalid","id":"paths/~1customers~1{customer_id}/patch/responses/422/content/application~1problem+json/examples/invalid_email"},"paths/~1customers~1{customer_id}/patch/responses/422/content/application~1problem+json/examples/invalid_phone":{"value":{"type":"https://docs.dinie.com/errors/validation-failed","title":"Validation Failed","status":422,"detail":"Phone format is invalid (expected E.164 with +55 country code)","code":"invalid_phone"},"key":"invalid_phone","summary":"Phone format is invalid (expected E.164 with +55 country code)","id":"paths/~1customers~1{customer_id}/patch/responses/422/content/application~1problem+json/examples/invalid_phone"},"paths/~1customers~1{customer_id}/patch/responses/429/content/application~1problem+json/example":{"value":{"type":"https://docs.dinie.com/errors/rate-limit-exceeded","title":"Rate Limit Exceeded","status":429,"detail":"Too many requests. Retry after 30 seconds."},"id":"paths/~1customers~1{customer_id}/patch/responses/429/content/application~1problem+json/example"},"paths/~1customers~1{customer_id}/patch/responses/500/content/application~1problem+json/example":{"value":{"type":"https://docs.dinie.com/errors/internal","title":"Internal Error","status":500,"detail":"An unexpected error occurred."},"id":"paths/~1customers~1{customer_id}/patch/responses/500/content/application~1problem+json/example"},"paths/~1customers~1{customer_id}~1kyc-attachments/post/responses/201/content/application~1json/example":{"value":{"attachment_type":"front","submitted":true},"id":"paths/~1customers~1{customer_id}~1kyc-attachments/post/responses/201/content/application~1json/example"},"paths/~1customers~1{customer_id}~1kyc-attachments/post/responses/400/content/application~1problem+json/examples/invalid_content_type":{"value":{"type":"https://docs.dinie.com/errors/invalid-request","title":"Invalid Request","status":400,"detail":"`Content-Type` is not `multipart/form-data`","code":"invalid_content_type"},"key":"invalid_content_type","summary":"`Content-Type` is not `multipart/form-data`","id":"paths/~1customers~1{customer_id}~1kyc-attachments/post/responses/400/content/application~1problem+json/examples/invalid_content_type"},"paths/~1customers~1{customer_id}~1kyc-attachments/post/responses/400/content/application~1problem+json/examples/missing_file":{"value":{"type":"https://docs.dinie.com/errors/invalid-request","title":"Invalid Request","status":400,"detail":"`file` part is missing from the multipart request","code":"missing_file"},"key":"missing_file","summary":"`file` part is missing from the multipart request","id":"paths/~1customers~1{customer_id}~1kyc-attachments/post/responses/400/content/application~1problem+json/examples/missing_file"},"paths/~1customers~1{customer_id}~1kyc-attachments/post/responses/400/content/application~1problem+json/examples/missing_type":{"value":{"type":"https://docs.dinie.com/errors/invalid-request","title":"Invalid Request","status":400,"detail":"`requirement_id`, `evidence_type`, or `attachment_type` field is missing","code":"missing_type"},"key":"missing_type","summary":"`requirement_id`, `evidence_type`, or `attachment_type` field is missing","id":"paths/~1customers~1{customer_id}~1kyc-attachments/post/responses/400/content/application~1problem+json/examples/missing_type"},"paths/~1customers~1{customer_id}~1kyc-attachments/post/responses/400/content/application~1problem+json/examples/file_too_large":{"value":{"type":"https://docs.dinie.com/errors/invalid-request","title":"Invalid Request","status":400,"detail":"File exceeds the maximum allowed size","code":"file_too_large"},"key":"file_too_large","summary":"File exceeds the maximum allowed size","id":"paths/~1customers~1{customer_id}~1kyc-attachments/post/responses/400/content/application~1problem+json/examples/file_too_large"},"paths/~1customers~1{customer_id}~1kyc-attachments/post/responses/401/content/application~1problem+json/examples/missing_token":{"value":{"type":"https://docs.dinie.com/errors/authentication-failed","title":"Authentication Failed","status":401,"detail":"Authorization header is missing","code":"missing_token"},"key":"missing_token","summary":"Authorization header is missing","id":"paths/~1customers~1{customer_id}~1kyc-attachments/post/responses/401/content/application~1problem+json/examples/missing_token"},"paths/~1customers~1{customer_id}~1kyc-attachments/post/responses/401/content/application~1problem+json/examples/invalid_token":{"value":{"type":"https://docs.dinie.com/errors/authentication-failed","title":"Authentication Failed","status":401,"detail":"Bearer token is invalid or malformed","code":"invalid_token"},"key":"invalid_token","summary":"Bearer token is invalid or malformed","id":"paths/~1customers~1{customer_id}~1kyc-attachments/post/responses/401/content/application~1problem+json/examples/invalid_token"},"paths/~1customers~1{customer_id}~1kyc-attachments/post/responses/401/content/application~1problem+json/examples/token_expired":{"value":{"type":"https://docs.dinie.com/errors/authentication-failed","title":"Authentication Failed","status":401,"detail":"Bearer token has expired","code":"token_expired"},"key":"token_expired","summary":"Bearer token has expired","id":"paths/~1customers~1{customer_id}~1kyc-attachments/post/responses/401/content/application~1problem+json/examples/token_expired"},"paths/~1customers~1{customer_id}~1kyc-attachments/post/responses/403/content/application~1problem+json/examples/forbidden":{"value":{"type":"https://docs.dinie.com/errors/forbidden","title":"Forbidden","status":403,"detail":"Forbidden","code":"forbidden"},"key":"forbidden","summary":"The credential is not permitted to perform this action","id":"paths/~1customers~1{customer_id}~1kyc-attachments/post/responses/403/content/application~1problem+json/examples/forbidden"},"paths/~1customers~1{customer_id}~1kyc-attachments/post/responses/404/content/application~1problem+json/examples/customer_not_found":{"value":{"type":"https://docs.dinie.com/errors/not-found","title":"Not Found","status":404,"detail":"Customer ID does not exist or does not belong to this partner","code":"customer_not_found"},"key":"customer_not_found","summary":"Customer ID does not exist or does not belong to this partner","id":"paths/~1customers~1{customer_id}~1kyc-attachments/post/responses/404/content/application~1problem+json/examples/customer_not_found"},"paths/~1customers~1{customer_id}~1kyc-attachments/post/responses/409/content/application~1problem+json/examples/email_already_exists":{"value":{"type":"https://docs.dinie.com/errors/conflict","title":"Conflict","status":409,"detail":"Director email already set","code":"email_already_exists"},"key":"email_already_exists","summary":"Director email is already set","id":"paths/~1customers~1{customer_id}~1kyc-attachments/post/responses/409/content/application~1problem+json/examples/email_already_exists"},"paths/~1customers~1{customer_id}~1kyc-attachments/post/responses/422/content/application~1problem+json/examples/invalid_requirement":{"value":{"type":"https://docs.dinie.com/errors/validation-failed","title":"Validation Failed","status":422,"detail":"`requirement_id`/`evidence_type`/`attachment_type` combination is not a valid KYC requirement for this customer","code":"invalid_requirement"},"key":"invalid_requirement","summary":"`requirement_id`/`evidence_type`/`attachment_type` combination is not a valid KYC requirement for this customer","id":"paths/~1customers~1{customer_id}~1kyc-attachments/post/responses/422/content/application~1problem+json/examples/invalid_requirement"},"paths/~1customers~1{customer_id}~1kyc-attachments/post/responses/422/content/application~1problem+json/examples/invalid_file_format":{"value":{"type":"https://docs.dinie.com/errors/validation-failed","title":"Validation Failed","status":422,"detail":"File format is not supported (expected PDF, JPEG, or PNG)","code":"invalid_file_format"},"key":"invalid_file_format","summary":"File format is not supported (expected PDF, JPEG, or PNG)","id":"paths/~1customers~1{customer_id}~1kyc-attachments/post/responses/422/content/application~1problem+json/examples/invalid_file_format"},"paths/~1customers~1{customer_id}~1kyc-attachments/post/responses/429/content/application~1problem+json/example":{"value":{"type":"https://docs.dinie.com/errors/rate-limit-exceeded","title":"Rate Limit Exceeded","status":429,"detail":"Too many requests. Retry after 30 seconds."},"id":"paths/~1customers~1{customer_id}~1kyc-attachments/post/responses/429/content/application~1problem+json/example"},"paths/~1customers~1{customer_id}~1kyc-attachments/post/responses/500/content/application~1problem+json/example":{"value":{"type":"https://docs.dinie.com/errors/internal","title":"Internal Error","status":500,"detail":"An unexpected error occurred."},"id":"paths/~1customers~1{customer_id}~1kyc-attachments/post/responses/500/content/application~1problem+json/example"},"paths/~1customers~1{customer_id}~1bank-account/get/responses/401/content/application~1problem+json/examples/missing_token":{"value":{"type":"https://docs.dinie.com/errors/authentication-failed","title":"Authentication Failed","status":401,"detail":"Authorization header is missing","code":"missing_token"},"key":"missing_token","summary":"Authorization header is missing","id":"paths/~1customers~1{customer_id}~1bank-account/get/responses/401/content/application~1problem+json/examples/missing_token"},"paths/~1customers~1{customer_id}~1bank-account/get/responses/401/content/application~1problem+json/examples/invalid_token":{"value":{"type":"https://docs.dinie.com/errors/authentication-failed","title":"Authentication Failed","status":401,"detail":"Bearer token is invalid or malformed","code":"invalid_token"},"key":"invalid_token","summary":"Bearer token is invalid or malformed","id":"paths/~1customers~1{customer_id}~1bank-account/get/responses/401/content/application~1problem+json/examples/invalid_token"},"paths/~1customers~1{customer_id}~1bank-account/get/responses/401/content/application~1problem+json/examples/token_expired":{"value":{"type":"https://docs.dinie.com/errors/authentication-failed","title":"Authentication Failed","status":401,"detail":"Bearer token has expired","code":"token_expired"},"key":"token_expired","summary":"Bearer token has expired","id":"paths/~1customers~1{customer_id}~1bank-account/get/responses/401/content/application~1problem+json/examples/token_expired"},"paths/~1customers~1{customer_id}~1bank-account/get/responses/403/content/application~1problem+json/examples/forbidden":{"value":{"type":"https://docs.dinie.com/errors/forbidden","title":"Forbidden","status":403,"detail":"Forbidden","code":"forbidden"},"key":"forbidden","summary":"The credential is not permitted to perform this action","id":"paths/~1customers~1{customer_id}~1bank-account/get/responses/403/content/application~1problem+json/examples/forbidden"},"paths/~1customers~1{customer_id}~1bank-account/get/responses/429/content/application~1problem+json/example":{"value":{"type":"https://docs.dinie.com/errors/rate-limit-exceeded","title":"Rate Limit Exceeded","status":429,"detail":"Too many requests. Retry after 30 seconds."},"id":"paths/~1customers~1{customer_id}~1bank-account/get/responses/429/content/application~1problem+json/example"},"paths/~1customers~1{customer_id}~1bank-account/get/responses/500/content/application~1problem+json/example":{"value":{"type":"https://docs.dinie.com/errors/internal","title":"Internal Error","status":500,"detail":"An unexpected error occurred."},"id":"paths/~1customers~1{customer_id}~1bank-account/get/responses/500/content/application~1problem+json/example"},"paths/~1customers~1{customer_id}~1bank-account/post/responses/401/content/application~1problem+json/examples/missing_token":{"value":{"type":"https://docs.dinie.com/errors/authentication-failed","title":"Authentication Failed","status":401,"detail":"Authorization header is missing","code":"missing_token"},"key":"missing_token","summary":"Authorization header is missing","id":"paths/~1customers~1{customer_id}~1bank-account/post/responses/401/content/application~1problem+json/examples/missing_token"},"paths/~1customers~1{customer_id}~1bank-account/post/responses/401/content/application~1problem+json/examples/invalid_token":{"value":{"type":"https://docs.dinie.com/errors/authentication-failed","title":"Authentication Failed","status":401,"detail":"Bearer token is invalid or malformed","code":"invalid_token"},"key":"invalid_token","summary":"Bearer token is invalid or malformed","id":"paths/~1customers~1{customer_id}~1bank-account/post/responses/401/content/application~1problem+json/examples/invalid_token"},"paths/~1customers~1{customer_id}~1bank-account/post/responses/401/content/application~1problem+json/examples/token_expired":{"value":{"type":"https://docs.dinie.com/errors/authentication-failed","title":"Authentication Failed","status":401,"detail":"Bearer token has expired","code":"token_expired"},"key":"token_expired","summary":"Bearer token has expired","id":"paths/~1customers~1{customer_id}~1bank-account/post/responses/401/content/application~1problem+json/examples/token_expired"},"paths/~1customers~1{customer_id}~1bank-account/post/responses/403/content/application~1problem+json/examples/forbidden":{"value":{"type":"https://docs.dinie.com/errors/forbidden","title":"Forbidden","status":403,"detail":"Forbidden","code":"forbidden"},"key":"forbidden","summary":"The credential is not permitted to perform this action","id":"paths/~1customers~1{customer_id}~1bank-account/post/responses/403/content/application~1problem+json/examples/forbidden"},"paths/~1customers~1{customer_id}~1bank-account/post/responses/422/content/application~1problem+json/examples/validation_failed":{"value":{"type":"https://docs.dinie.com/errors/validation-failed","title":"Validation Failed","status":422,"detail":"Bank must exist","code":"validation_failed"},"key":"validation_failed","summary":"One or more bank account fields are invalid","id":"paths/~1customers~1{customer_id}~1bank-account/post/responses/422/content/application~1problem+json/examples/validation_failed"},"paths/~1customers~1{customer_id}~1bank-account/post/responses/422/content/application~1problem+json/examples/no_user":{"value":{"type":"https://docs.dinie.com/errors/validation-failed","title":"Validation Failed","status":422,"detail":"Customer has no confirmed user account","code":"no_user"},"key":"no_user","summary":"The customer has no confirmed user account","id":"paths/~1customers~1{customer_id}~1bank-account/post/responses/422/content/application~1problem+json/examples/no_user"},"paths/~1customers~1{customer_id}~1bank-account/post/responses/429/content/application~1problem+json/example":{"value":{"type":"https://docs.dinie.com/errors/rate-limit-exceeded","title":"Rate Limit Exceeded","status":429,"detail":"Too many requests. Retry after 30 seconds."},"id":"paths/~1customers~1{customer_id}~1bank-account/post/responses/429/content/application~1problem+json/example"},"paths/~1customers~1{customer_id}~1bank-account/post/responses/500/content/application~1problem+json/example":{"value":{"type":"https://docs.dinie.com/errors/internal","title":"Internal Error","status":500,"detail":"An unexpected error occurred."},"id":"paths/~1customers~1{customer_id}~1bank-account/post/responses/500/content/application~1problem+json/example"},"paths/~1banks/get/responses/401/content/application~1problem+json/examples/missing_token":{"value":{"type":"https://docs.dinie.com/errors/authentication-failed","title":"Authentication Failed","status":401,"detail":"Authorization header is missing","code":"missing_token"},"key":"missing_token","summary":"Authorization header is missing","id":"paths/~1banks/get/responses/401/content/application~1problem+json/examples/missing_token"},"paths/~1banks/get/responses/401/content/application~1problem+json/examples/invalid_token":{"value":{"type":"https://docs.dinie.com/errors/authentication-failed","title":"Authentication Failed","status":401,"detail":"Bearer token is invalid or malformed","code":"invalid_token"},"key":"invalid_token","summary":"Bearer token is invalid or malformed","id":"paths/~1banks/get/responses/401/content/application~1problem+json/examples/invalid_token"},"paths/~1banks/get/responses/401/content/application~1problem+json/examples/token_expired":{"value":{"type":"https://docs.dinie.com/errors/authentication-failed","title":"Authentication Failed","status":401,"detail":"Bearer token has expired","code":"token_expired"},"key":"token_expired","summary":"Bearer token has expired","id":"paths/~1banks/get/responses/401/content/application~1problem+json/examples/token_expired"},"paths/~1banks/get/responses/403/content/application~1problem+json/examples/forbidden":{"value":{"type":"https://docs.dinie.com/errors/forbidden","title":"Forbidden","status":403,"detail":"Forbidden","code":"forbidden"},"key":"forbidden","summary":"The credential is not permitted to perform this action","id":"paths/~1banks/get/responses/403/content/application~1problem+json/examples/forbidden"},"paths/~1banks/get/responses/429/content/application~1problem+json/example":{"value":{"type":"https://docs.dinie.com/errors/rate-limit-exceeded","title":"Rate Limit Exceeded","status":429,"detail":"Too many requests. Retry after 30 seconds."},"id":"paths/~1banks/get/responses/429/content/application~1problem+json/example"},"paths/~1banks/get/responses/500/content/application~1problem+json/example":{"value":{"type":"https://docs.dinie.com/errors/internal","title":"Internal Error","status":500,"detail":"An unexpected error occurred."},"id":"paths/~1banks/get/responses/500/content/application~1problem+json/example"},"paths/~1customers~1{customer_id}~1biometrics/post/responses/201/content/application~1json/example":{"value":{"session_url":"https://kyc-app.dinie.com.br/session/dinie_bsc_test_abc123def456","expires_at":1741082400},"id":"paths/~1customers~1{customer_id}~1biometrics/post/responses/201/content/application~1json/example"},"paths/~1customers~1{customer_id}~1biometrics/post/responses/401/content/application~1problem+json/examples/missing_token":{"value":{"type":"https://docs.dinie.com/errors/authentication-failed","title":"Authentication Failed","status":401,"detail":"Authorization header is missing","code":"missing_token"},"key":"missing_token","summary":"Authorization header is missing","id":"paths/~1customers~1{customer_id}~1biometrics/post/responses/401/content/application~1problem+json/examples/missing_token"},"paths/~1customers~1{customer_id}~1biometrics/post/responses/401/content/application~1problem+json/examples/invalid_token":{"value":{"type":"https://docs.dinie.com/errors/authentication-failed","title":"Authentication Failed","status":401,"detail":"Bearer token is invalid or malformed","code":"invalid_token"},"key":"invalid_token","summary":"Bearer token is invalid or malformed","id":"paths/~1customers~1{customer_id}~1biometrics/post/responses/401/content/application~1problem+json/examples/invalid_token"},"paths/~1customers~1{customer_id}~1biometrics/post/responses/401/content/application~1problem+json/examples/token_expired":{"value":{"type":"https://docs.dinie.com/errors/authentication-failed","title":"Authentication Failed","status":401,"detail":"Bearer token has expired","code":"token_expired"},"key":"token_expired","summary":"Bearer token has expired","id":"paths/~1customers~1{customer_id}~1biometrics/post/responses/401/content/application~1problem+json/examples/token_expired"},"paths/~1customers~1{customer_id}~1biometrics/post/responses/403/content/application~1problem+json/examples/forbidden":{"value":{"type":"https://docs.dinie.com/errors/forbidden","title":"Forbidden","status":403,"detail":"Forbidden","code":"forbidden"},"key":"forbidden","summary":"The credential is not permitted to perform this action","id":"paths/~1customers~1{customer_id}~1biometrics/post/responses/403/content/application~1problem+json/examples/forbidden"},"paths/~1customers~1{customer_id}~1biometrics/post/responses/404/content/application~1problem+json/examples/customer_not_found":{"value":{"type":"https://docs.dinie.com/errors/not-found","title":"Not Found","status":404,"detail":"Customer ID does not exist or does not belong to this partner","code":"customer_not_found"},"key":"customer_not_found","summary":"Customer ID does not exist or does not belong to this partner","id":"paths/~1customers~1{customer_id}~1biometrics/post/responses/404/content/application~1problem+json/examples/customer_not_found"},"paths/~1customers~1{customer_id}~1biometrics/post/responses/409/content/application~1problem+json/examples/session_already_active":{"value":{"type":"https://docs.dinie.com/errors/conflict","title":"Conflict","status":409,"detail":"A biometrics session is already active for this customer","code":"session_already_active"},"key":"session_already_active","summary":"A biometrics session is already active for this customer","id":"paths/~1customers~1{customer_id}~1biometrics/post/responses/409/content/application~1problem+json/examples/session_already_active"},"paths/~1customers~1{customer_id}~1biometrics/post/responses/422/content/application~1problem+json/examples/biometrics_not_required":{"value":{"type":"https://docs.dinie.com/errors/validation-failed","title":"Validation Failed","status":422,"detail":"Customer does not have pending biometrics KYC requirements","code":"biometrics_not_required"},"key":"biometrics_not_required","summary":"Customer does not have pending biometrics KYC requirements","id":"paths/~1customers~1{customer_id}~1biometrics/post/responses/422/content/application~1problem+json/examples/biometrics_not_required"},"paths/~1customers~1{customer_id}~1biometrics/post/responses/429/content/application~1problem+json/example":{"value":{"type":"https://docs.dinie.com/errors/rate-limit-exceeded","title":"Rate Limit Exceeded","status":429,"detail":"Too many requests. Retry after 30 seconds."},"id":"paths/~1customers~1{customer_id}~1biometrics/post/responses/429/content/application~1problem+json/example"},"paths/~1customers~1{customer_id}~1biometrics/post/responses/500/content/application~1problem+json/example":{"value":{"type":"https://docs.dinie.com/errors/internal","title":"Internal Error","status":500,"detail":"An unexpected error occurred."},"id":"paths/~1customers~1{customer_id}~1biometrics/post/responses/500/content/application~1problem+json/example"},"paths/customer.created/post/requestBody/content/application~1json/example":{"value":{"type":"customer.created","id":"evt_550e8400e29b41d4a716446655440000","api_version":"2026-03-01","created_at":1772791260,"delivery_id":"dlv_550e8400e29b41d4a716446655440000","timestamp":1772791260,"data":{"id":"cust_550e8400e29b41d4a716446655440000","status":"pending_kyc","cpf":"123.456.789-00","cnpj":"12.345.678/0001-90","name":"João Silva","email":"joao@example.com","phone":"+5511999999999","trading_name":"Loja do João","external_id":"partner-ref-123","kyc":[{"requirement_id":"identity_003XXXXXXXXXXXXXXX","requirement_type":"identity","label":"Documento de identidade","mandatory":true,"subject":{"id":"003XXXXXXXXXXXXXXX","name":"Joao Silva","subject_type":"applicant"}}]}},"id":"paths/customer.created/post/requestBody/content/application~1json/example"},"paths/customer.under_review/post/requestBody/content/application~1json/example":{"value":{"type":"customer.under_review","id":"evt_550e8400e29b41d4a716446655440001","api_version":"2026-03-01","created_at":1772798400,"delivery_id":"dlv_550e8400e29b41d4a716446655440001","timestamp":1772798400,"data":{"id":"cust_550e8400e29b41d4a716446655440000","status":"under_review","external_id":"partner-ref-123"}},"id":"paths/customer.under_review/post/requestBody/content/application~1json/example"},"paths/customer.kyc_updated/post/requestBody/content/application~1json/example":{"value":{"type":"customer.kyc_updated","id":"evt_550e8400e29b41d4a716446655440002","api_version":"2026-03-01","created_at":1772800200,"delivery_id":"dlv_550e8400e29b41d4a716446655440002","timestamp":1772800200,"data":{"id":"cust_550e8400e29b41d4a716446655440000","status":"pending_kyc","external_id":"partner-ref-123","kyc":[{"requirement_id":"company_document_001XXXXXXXXXXXXXXX","requirement_type":"company_document","label":"Documento da empresa","mandatory":true,"submitted":{"evidence_type":"ccmei","attachments":[{"attachment_type":"file","submitted":true}],"review_status":"accepted","review_reason":null}},{"requirement_id":"identity_003XXXXXXXXXXXXXXX","requirement_type":"identity","label":"Documento de identidade","mandatory":true,"subject":{"id":"003XXXXXXXXXXXXXXX","name":"Joao Silva","subject_type":"applicant"}}]}},"id":"paths/customer.kyc_updated/post/requestBody/content/application~1json/example"},"paths/customer.active/post/requestBody/content/application~1json/example":{"value":{"type":"customer.active","id":"evt_550e8400e29b41d4a716446655440003","api_version":"2026-03-01","created_at":1772805600,"delivery_id":"dlv_550e8400e29b41d4a716446655440003","timestamp":1772805600,"data":{"id":"cust_550e8400e29b41d4a716446655440000","status":"active","external_id":"partner-ref-123"}},"id":"paths/customer.active/post/requestBody/content/application~1json/example"},"paths/customer.denied/post/requestBody/content/application~1json/example":{"value":{"type":"customer.denied","id":"evt_550e8400e29b41d4a716446655440007","api_version":"2026-03-01","created_at":1772807400,"delivery_id":"dlv_550e8400e29b41d4a716446655440007","timestamp":1772807400,"data":{"id":"cust_550e8400e29b41d4a716446655440000","status":"denied","cpf":"123.456.789-00","cnpj":"12.345.678/0001-90","name":"Joao Silva","email":"joao@example.com","phone":"+5511999999999","external_id":"partner-ref-123"}},"id":"paths/customer.denied/post/requestBody/content/application~1json/example"},"paths/~1customers~1{customer_id}~1credit-offers/get/responses/200/content/application~1json/example":{"value":{"data":[{"id":"co_550e8400e29b41d4a716446655440000","customer_id":"cust_550e8400e29b41d4a716446655440000","status":"available","approved_amount":50000,"min_amount":200,"monthly_interest_rate":3.5,"installments":12,"due_date_rule":null,"valid_until":1775253599,"created_at":1772791200,"updated_at":1772877600}],"has_more":false},"id":"paths/~1customers~1{customer_id}~1credit-offers/get/responses/200/content/application~1json/example"},"paths/~1customers~1{customer_id}~1credit-offers/get/responses/400/content/application~1problem+json/examples/invalid_limit":{"value":{"type":"https://docs.dinie.com/errors/invalid-request","title":"Invalid Request","status":400,"detail":"`limit` is not a valid integer or is outside 1–100 range","code":"invalid_limit"},"key":"invalid_limit","summary":"`limit` is not a valid integer or is outside 1–100 range","id":"paths/~1customers~1{customer_id}~1credit-offers/get/responses/400/content/application~1problem+json/examples/invalid_limit"},"paths/~1customers~1{customer_id}~1credit-offers/get/responses/400/content/application~1problem+json/examples/invalid_cursor":{"value":{"type":"https://docs.dinie.com/errors/invalid-request","title":"Invalid Request","status":400,"detail":"`starting_after` references a non-existent or inaccessible credit offer","code":"invalid_cursor"},"key":"invalid_cursor","summary":"`starting_after` references a non-existent or inaccessible credit offer","id":"paths/~1customers~1{customer_id}~1credit-offers/get/responses/400/content/application~1problem+json/examples/invalid_cursor"},"paths/~1customers~1{customer_id}~1credit-offers/get/responses/401/content/application~1problem+json/examples/missing_token":{"value":{"type":"https://docs.dinie.com/errors/authentication-failed","title":"Authentication Failed","status":401,"detail":"Authorization header is missing","code":"missing_token"},"key":"missing_token","summary":"Authorization header is missing","id":"paths/~1customers~1{customer_id}~1credit-offers/get/responses/401/content/application~1problem+json/examples/missing_token"},"paths/~1customers~1{customer_id}~1credit-offers/get/responses/401/content/application~1problem+json/examples/invalid_token":{"value":{"type":"https://docs.dinie.com/errors/authentication-failed","title":"Authentication Failed","status":401,"detail":"Bearer token is invalid or malformed","code":"invalid_token"},"key":"invalid_token","summary":"Bearer token is invalid or malformed","id":"paths/~1customers~1{customer_id}~1credit-offers/get/responses/401/content/application~1problem+json/examples/invalid_token"},"paths/~1customers~1{customer_id}~1credit-offers/get/responses/401/content/application~1problem+json/examples/token_expired":{"value":{"type":"https://docs.dinie.com/errors/authentication-failed","title":"Authentication Failed","status":401,"detail":"Bearer token has expired","code":"token_expired"},"key":"token_expired","summary":"Bearer token has expired","id":"paths/~1customers~1{customer_id}~1credit-offers/get/responses/401/content/application~1problem+json/examples/token_expired"},"paths/~1customers~1{customer_id}~1credit-offers/get/responses/404/content/application~1problem+json/examples/customer_not_found":{"value":{"type":"https://docs.dinie.com/errors/not-found","title":"Not Found","status":404,"detail":"Customer ID does not exist or does not belong to this partner","code":"customer_not_found"},"key":"customer_not_found","summary":"Customer ID does not exist or does not belong to this partner","id":"paths/~1customers~1{customer_id}~1credit-offers/get/responses/404/content/application~1problem+json/examples/customer_not_found"},"paths/~1customers~1{customer_id}~1credit-offers/get/responses/429/content/application~1problem+json/example":{"value":{"type":"https://docs.dinie.com/errors/rate-limit-exceeded","title":"Rate Limit Exceeded","status":429,"detail":"Too many requests. Retry after 30 seconds."},"id":"paths/~1customers~1{customer_id}~1credit-offers/get/responses/429/content/application~1problem+json/example"},"paths/~1customers~1{customer_id}~1credit-offers/get/responses/500/content/application~1problem+json/example":{"value":{"type":"https://docs.dinie.com/errors/internal","title":"Internal Error","status":500,"detail":"An unexpected error occurred."},"id":"paths/~1customers~1{customer_id}~1credit-offers/get/responses/500/content/application~1problem+json/example"},"paths/~1credit-offers/get/responses/200/content/application~1json/example":{"value":{"data":[{"id":"co_550e8400e29b41d4a716446655440000","customer_id":"cust_550e8400e29b41d4a716446655440000","status":"available","approved_amount":50000,"min_amount":200,"monthly_interest_rate":3.5,"installments":12,"due_date_rule":null,"valid_until":1775253599,"created_at":1772791200,"updated_at":1772877600}],"has_more":false},"id":"paths/~1credit-offers/get/responses/200/content/application~1json/example"},"paths/~1credit-offers/get/responses/400/content/application~1problem+json/examples/invalid_limit":{"value":{"type":"https://docs.dinie.com/errors/invalid-request","title":"Invalid Request","status":400,"detail":"`limit` is not a valid integer or is outside 1–100 range","code":"invalid_limit"},"key":"invalid_limit","summary":"`limit` is not a valid integer or is outside 1–100 range","id":"paths/~1credit-offers/get/responses/400/content/application~1problem+json/examples/invalid_limit"},"paths/~1credit-offers/get/responses/400/content/application~1problem+json/examples/invalid_cursor":{"value":{"type":"https://docs.dinie.com/errors/invalid-request","title":"Invalid Request","status":400,"detail":"`starting_after` references a non-existent or inaccessible credit offer","code":"invalid_cursor"},"key":"invalid_cursor","summary":"`starting_after` references a non-existent or inaccessible credit offer","id":"paths/~1credit-offers/get/responses/400/content/application~1problem+json/examples/invalid_cursor"},"paths/~1credit-offers/get/responses/401/content/application~1problem+json/examples/missing_token":{"value":{"type":"https://docs.dinie.com/errors/authentication-failed","title":"Authentication Failed","status":401,"detail":"Authorization header is missing","code":"missing_token"},"key":"missing_token","summary":"Authorization header is missing","id":"paths/~1credit-offers/get/responses/401/content/application~1problem+json/examples/missing_token"},"paths/~1credit-offers/get/responses/401/content/application~1problem+json/examples/invalid_token":{"value":{"type":"https://docs.dinie.com/errors/authentication-failed","title":"Authentication Failed","status":401,"detail":"Bearer token is invalid or malformed","code":"invalid_token"},"key":"invalid_token","summary":"Bearer token is invalid or malformed","id":"paths/~1credit-offers/get/responses/401/content/application~1problem+json/examples/invalid_token"},"paths/~1credit-offers/get/responses/401/content/application~1problem+json/examples/token_expired":{"value":{"type":"https://docs.dinie.com/errors/authentication-failed","title":"Authentication Failed","status":401,"detail":"Bearer token has expired","code":"token_expired"},"key":"token_expired","summary":"Bearer token has expired","id":"paths/~1credit-offers/get/responses/401/content/application~1problem+json/examples/token_expired"},"paths/~1credit-offers/get/responses/404/content/application~1problem+json/examples/customer_not_found":{"value":{"type":"https://docs.dinie.com/errors/not-found","title":"Not Found","status":404,"detail":"`customer_id` filter references a non-existent or inaccessible customer","code":"customer_not_found"},"key":"customer_not_found","summary":"`customer_id` filter references a non-existent or inaccessible customer","id":"paths/~1credit-offers/get/responses/404/content/application~1problem+json/examples/customer_not_found"},"paths/~1credit-offers/get/responses/429/content/application~1problem+json/example":{"value":{"type":"https://docs.dinie.com/errors/rate-limit-exceeded","title":"Rate Limit Exceeded","status":429,"detail":"Too many requests. Retry after 30 seconds."},"id":"paths/~1credit-offers/get/responses/429/content/application~1problem+json/example"},"paths/~1credit-offers/get/responses/500/content/application~1problem+json/example":{"value":{"type":"https://docs.dinie.com/errors/internal","title":"Internal Error","status":500,"detail":"An unexpected error occurred."},"id":"paths/~1credit-offers/get/responses/500/content/application~1problem+json/example"},"paths/~1credit-offers~1{credit_offer_id}/get/responses/200/content/application~1json/example":{"value":{"id":"co_550e8400e29b41d4a716446655440000","customer_id":"cust_550e8400e29b41d4a716446655440000","external_id":"partner-ref-123","status":"available","approved_amount":50000,"min_amount":200,"monthly_interest_rate":3.5,"installments":12,"due_date_rule":null,"valid_until":1775253599,"created_at":1772791200,"updated_at":1772877600},"id":"paths/~1credit-offers~1{credit_offer_id}/get/responses/200/content/application~1json/example"},"paths/~1credit-offers~1{credit_offer_id}/get/responses/401/content/application~1problem+json/examples/missing_token":{"value":{"type":"https://docs.dinie.com/errors/authentication-failed","title":"Authentication Failed","status":401,"detail":"Authorization header is missing","code":"missing_token"},"key":"missing_token","summary":"Authorization header is missing","id":"paths/~1credit-offers~1{credit_offer_id}/get/responses/401/content/application~1problem+json/examples/missing_token"},"paths/~1credit-offers~1{credit_offer_id}/get/responses/401/content/application~1problem+json/examples/invalid_token":{"value":{"type":"https://docs.dinie.com/errors/authentication-failed","title":"Authentication Failed","status":401,"detail":"Bearer token is invalid or malformed","code":"invalid_token"},"key":"invalid_token","summary":"Bearer token is invalid or malformed","id":"paths/~1credit-offers~1{credit_offer_id}/get/responses/401/content/application~1problem+json/examples/invalid_token"},"paths/~1credit-offers~1{credit_offer_id}/get/responses/401/content/application~1problem+json/examples/token_expired":{"value":{"type":"https://docs.dinie.com/errors/authentication-failed","title":"Authentication Failed","status":401,"detail":"Bearer token has expired","code":"token_expired"},"key":"token_expired","summary":"Bearer token has expired","id":"paths/~1credit-offers~1{credit_offer_id}/get/responses/401/content/application~1problem+json/examples/token_expired"},"paths/~1credit-offers~1{credit_offer_id}/get/responses/404/content/application~1problem+json/examples/credit_offer_not_found":{"value":{"type":"https://docs.dinie.com/errors/not-found","title":"Not Found","status":404,"detail":"Credit offer ID does not exist or does not belong to this partner","code":"credit_offer_not_found"},"key":"credit_offer_not_found","summary":"Credit offer ID does not exist or does not belong to this partner","id":"paths/~1credit-offers~1{credit_offer_id}/get/responses/404/content/application~1problem+json/examples/credit_offer_not_found"},"paths/~1credit-offers~1{credit_offer_id}/get/responses/429/content/application~1problem+json/example":{"value":{"type":"https://docs.dinie.com/errors/rate-limit-exceeded","title":"Rate Limit Exceeded","status":429,"detail":"Too many requests. Retry after 30 seconds."},"id":"paths/~1credit-offers~1{credit_offer_id}/get/responses/429/content/application~1problem+json/example"},"paths/~1credit-offers~1{credit_offer_id}/get/responses/500/content/application~1problem+json/example":{"value":{"type":"https://docs.dinie.com/errors/internal","title":"Internal Error","status":500,"detail":"An unexpected error occurred."},"id":"paths/~1credit-offers~1{credit_offer_id}/get/responses/500/content/application~1problem+json/example"},"paths/credit_offer.available/post/requestBody/content/application~1json/example":{"value":{"type":"credit_offer.available","id":"evt_550e8400e29b41d4a716446655440004","api_version":"2026-03-01","created_at":1772809200,"delivery_id":"dlv_550e8400e29b41d4a716446655440004","timestamp":1772809200,"data":{"id":"co_550e8400e29b41d4a716446655440000","customer_id":"cust_550e8400e29b41d4a716446655440000","external_id":"partner-ref-123","status":"available","approved_amount":50000,"min_amount":200,"monthly_interest_rate":3.5,"installments":12,"due_date_rule":null,"valid_until":1775253599}},"id":"paths/credit_offer.available/post/requestBody/content/application~1json/example"},"paths/credit_offer.expired/post/requestBody/content/application~1json/example":{"value":{"type":"credit_offer.expired","id":"evt_550e8400e29b41d4a716446655440005","api_version":"2026-03-01","created_at":1775253600,"delivery_id":"dlv_550e8400e29b41d4a716446655440005","timestamp":1775253600,"data":{"id":"co_660e8400e29b41d4a716446655440001","customer_id":"cust_550e8400e29b41d4a716446655440000","external_id":"partner-ref-123","status":"expired","approved_amount":30000,"min_amount":200,"monthly_interest_rate":3.5,"installments":12,"due_date_rule":null,"valid_until":1775253599}},"id":"paths/credit_offer.expired/post/requestBody/content/application~1json/example"},"paths/~1credit-offers~1{credit_offer_id}~1simulations/post/requestBody/content/application~1json/example":{"value":{"requested_amount":25000,"installment_count":4},"id":"paths/~1credit-offers~1{credit_offer_id}~1simulations/post/requestBody/content/application~1json/example"},"paths/~1credit-offers~1{credit_offer_id}~1simulations/post/responses/201/content/application~1json/example":{"value":{"id":"sim_550e8400e29b41d4a716446655440001","credit_offer_id":"co_550e8400e29b41d4a716446655440000","requested_amount":25000,"principal_amount":29375,"interest_amount":2614.36,"iof_amount":1875,"fee_amount":2500,"total_amount":31989.36,"monthly_interest_rate":3.5,"annual_interest_rate":51.11,"monthly_cet_rate":2,"annual_cet_rate":233.18,"installment_count":4,"installment_amount":7997.34,"first_due_date":"2026-04-03","created_at":1709548200},"id":"paths/~1credit-offers~1{credit_offer_id}~1simulations/post/responses/201/content/application~1json/example"},"paths/~1credit-offers~1{credit_offer_id}~1simulations/post/responses/400/content/application~1problem+json/examples/invalid_content_type":{"value":{"type":"https://docs.dinie.com/errors/invalid-request","title":"Invalid Request","status":400,"detail":"`Content-Type` is not `application/json`","code":"invalid_content_type"},"key":"invalid_content_type","summary":"`Content-Type` is not `application/json`","id":"paths/~1credit-offers~1{credit_offer_id}~1simulations/post/responses/400/content/application~1problem+json/examples/invalid_content_type"},"paths/~1credit-offers~1{credit_offer_id}~1simulations/post/responses/400/content/application~1problem+json/examples/malformed_body":{"value":{"type":"https://docs.dinie.com/errors/invalid-request","title":"Invalid Request","status":400,"detail":"Request body is not valid JSON","code":"malformed_body"},"key":"malformed_body","summary":"Request body is not valid JSON","id":"paths/~1credit-offers~1{credit_offer_id}~1simulations/post/responses/400/content/application~1problem+json/examples/malformed_body"},"paths/~1credit-offers~1{credit_offer_id}~1simulations/post/responses/401/content/application~1problem+json/examples/missing_token":{"value":{"type":"https://docs.dinie.com/errors/authentication-failed","title":"Authentication Failed","status":401,"detail":"Authorization header is missing","code":"missing_token"},"key":"missing_token","summary":"Authorization header is missing","id":"paths/~1credit-offers~1{credit_offer_id}~1simulations/post/responses/401/content/application~1problem+json/examples/missing_token"},"paths/~1credit-offers~1{credit_offer_id}~1simulations/post/responses/401/content/application~1problem+json/examples/invalid_token":{"value":{"type":"https://docs.dinie.com/errors/authentication-failed","title":"Authentication Failed","status":401,"detail":"Bearer token is invalid or malformed","code":"invalid_token"},"key":"invalid_token","summary":"Bearer token is invalid or malformed","id":"paths/~1credit-offers~1{credit_offer_id}~1simulations/post/responses/401/content/application~1problem+json/examples/invalid_token"},"paths/~1credit-offers~1{credit_offer_id}~1simulations/post/responses/401/content/application~1problem+json/examples/token_expired":{"value":{"type":"https://docs.dinie.com/errors/authentication-failed","title":"Authentication Failed","status":401,"detail":"Bearer token has expired","code":"token_expired"},"key":"token_expired","summary":"Bearer token has expired","id":"paths/~1credit-offers~1{credit_offer_id}~1simulations/post/responses/401/content/application~1problem+json/examples/token_expired"},"paths/~1credit-offers~1{credit_offer_id}~1simulations/post/responses/404/content/application~1problem+json/examples/credit_offer_not_found":{"value":{"type":"https://docs.dinie.com/errors/not-found","title":"Not Found","status":404,"detail":"Credit offer ID does not exist or does not belong to this partner","code":"credit_offer_not_found"},"key":"credit_offer_not_found","summary":"Credit offer ID does not exist or does not belong to this partner","id":"paths/~1credit-offers~1{credit_offer_id}~1simulations/post/responses/404/content/application~1problem+json/examples/credit_offer_not_found"},"paths/~1credit-offers~1{credit_offer_id}~1simulations/post/responses/422/content/application~1problem+json/examples/offer_expired":{"value":{"type":"https://docs.dinie.com/errors/validation-failed","title":"Validation Failed","status":422,"detail":"Credit offer status is `expired`","code":"offer_expired"},"key":"offer_expired","summary":"Credit offer status is `expired`","id":"paths/~1credit-offers~1{credit_offer_id}~1simulations/post/responses/422/content/application~1problem+json/examples/offer_expired"},"paths/~1credit-offers~1{credit_offer_id}~1simulations/post/responses/422/content/application~1problem+json/examples/offer_already_accepted":{"value":{"type":"https://docs.dinie.com/errors/validation-failed","title":"Validation Failed","status":422,"detail":"Credit offer status is `accepted`","code":"offer_already_accepted"},"key":"offer_already_accepted","summary":"Credit offer status is `accepted`","id":"paths/~1credit-offers~1{credit_offer_id}~1simulations/post/responses/422/content/application~1problem+json/examples/offer_already_accepted"},"paths/~1credit-offers~1{credit_offer_id}~1simulations/post/responses/422/content/application~1problem+json/examples/invalid_amount":{"value":{"type":"https://docs.dinie.com/errors/validation-failed","title":"Validation Failed","status":422,"detail":"`requested_amount` exceeds `approved_amount`, is below `min_amount`, or is not a valid monetary value","code":"invalid_amount"},"key":"invalid_amount","summary":"`requested_amount` exceeds `approved_amount`, is below `min_amount`, or is not a valid monetary value","id":"paths/~1credit-offers~1{credit_offer_id}~1simulations/post/responses/422/content/application~1problem+json/examples/invalid_amount"},"paths/~1credit-offers~1{credit_offer_id}~1simulations/post/responses/422/content/application~1problem+json/examples/invalid_installments":{"value":{"type":"https://docs.dinie.com/errors/validation-failed","title":"Validation Failed","status":422,"detail":"`installment_count` is outside the allowed range","code":"invalid_installments"},"key":"invalid_installments","summary":"`installment_count` is outside the allowed range","id":"paths/~1credit-offers~1{credit_offer_id}~1simulations/post/responses/422/content/application~1problem+json/examples/invalid_installments"},"paths/~1credit-offers~1{credit_offer_id}~1simulations/post/responses/429/content/application~1problem+json/example":{"value":{"type":"https://docs.dinie.com/errors/rate-limit-exceeded","title":"Rate Limit Exceeded","status":429,"detail":"Too many requests. Retry after 30 seconds."},"id":"paths/~1credit-offers~1{credit_offer_id}~1simulations/post/responses/429/content/application~1problem+json/example"},"paths/~1credit-offers~1{credit_offer_id}~1simulations/post/responses/500/content/application~1problem+json/example":{"value":{"type":"https://docs.dinie.com/errors/internal","title":"Internal Error","status":500,"detail":"An unexpected error occurred."},"id":"paths/~1credit-offers~1{credit_offer_id}~1simulations/post/responses/500/content/application~1problem+json/example"},"paths/~1loans/post/requestBody/content/application~1json/example":{"value":{"credit_offer_id":"co_550e8400e29b41d4a716446655440000","simulation_id":"sim_550e8400e29b41d4a716446655440001","installment_count":4,"installment_amount":7997.34,"first_due_date":"2026-04-03"},"id":"paths/~1loans/post/requestBody/content/application~1json/example"},"paths/~1loans/post/responses/201/content/application~1json/example":{"value":{"id":"ln_550e8400e29b41d4a716446655440001","credit_offer_id":"co_550e8400e29b41d4a716446655440000","customer_id":"cust_550e8400e29b41d4a716446655440000","simulation_id":"sim_550e8400e29b41d4a716446655440001","status":"awaiting_signatures","requested_amount":25000,"principal_amount":29375,"iof_amount":1875,"monthly_interest_rate":3.5,"annual_interest_rate":51.11,"monthly_cet_rate":2,"annual_cet_rate":233.18,"total_amount":31989.36,"installment_amount":7997.34,"first_due_date":"2026-04-03","installment_count":4,"ccb_number":"CCB-2026-001234","disbursement_method":"pix","signing_url":"https://clicksign.com/widget/...","created_at":1709550000,"updated_at":1709550000},"id":"paths/~1loans/post/responses/201/content/application~1json/example"},"paths/~1loans/post/responses/400/content/application~1problem+json/examples/invalid_content_type":{"value":{"type":"https://docs.dinie.com/errors/invalid-request","title":"Invalid Request","status":400,"detail":"`Content-Type` is not `application/json`","code":"invalid_content_type"},"key":"invalid_content_type","summary":"`Content-Type` is not `application/json`","id":"paths/~1loans/post/responses/400/content/application~1problem+json/examples/invalid_content_type"},"paths/~1loans/post/responses/400/content/application~1problem+json/examples/malformed_body":{"value":{"type":"https://docs.dinie.com/errors/invalid-request","title":"Invalid Request","status":400,"detail":"Request body is not valid JSON","code":"malformed_body"},"key":"malformed_body","summary":"Request body is not valid JSON","id":"paths/~1loans/post/responses/400/content/application~1problem+json/examples/malformed_body"},"paths/~1loans/post/responses/401/content/application~1problem+json/examples/missing_token":{"value":{"type":"https://docs.dinie.com/errors/authentication-failed","title":"Authentication Failed","status":401,"detail":"Authorization header is missing","code":"missing_token"},"key":"missing_token","summary":"Authorization header is missing","id":"paths/~1loans/post/responses/401/content/application~1problem+json/examples/missing_token"},"paths/~1loans/post/responses/401/content/application~1problem+json/examples/invalid_token":{"value":{"type":"https://docs.dinie.com/errors/authentication-failed","title":"Authentication Failed","status":401,"detail":"Bearer token is invalid or malformed","code":"invalid_token"},"key":"invalid_token","summary":"Bearer token is invalid or malformed","id":"paths/~1loans/post/responses/401/content/application~1problem+json/examples/invalid_token"},"paths/~1loans/post/responses/401/content/application~1problem+json/examples/token_expired":{"value":{"type":"https://docs.dinie.com/errors/authentication-failed","title":"Authentication Failed","status":401,"detail":"Bearer token has expired","code":"token_expired"},"key":"token_expired","summary":"Bearer token has expired","id":"paths/~1loans/post/responses/401/content/application~1problem+json/examples/token_expired"},"paths/~1loans/post/responses/404/content/application~1problem+json/examples/credit_offer_not_found":{"value":{"type":"https://docs.dinie.com/errors/not-found","title":"Not Found","status":404,"detail":"`credit_offer_id` does not exist or does not belong to this partner","code":"credit_offer_not_found"},"key":"credit_offer_not_found","summary":"`credit_offer_id` does not exist or does not belong to this partner","id":"paths/~1loans/post/responses/404/content/application~1problem+json/examples/credit_offer_not_found"},"paths/~1loans/post/responses/409/content/application~1problem+json/examples/offer_already_accepted":{"value":{"type":"https://docs.dinie.com/errors/conflict","title":"Conflict","status":409,"detail":"A loan already exists for this credit offer","code":"offer_already_accepted"},"key":"offer_already_accepted","summary":"A loan already exists for this credit offer","id":"paths/~1loans/post/responses/409/content/application~1problem+json/examples/offer_already_accepted"},"paths/~1loans/post/responses/409/content/application~1problem+json/examples/withdrawal_locked":{"value":{"type":"https://docs.dinie.com/errors/conflict","title":"Conflict","status":409,"detail":"Another withdrawal is being processed for this customer (concurrent lock)","code":"withdrawal_locked"},"key":"withdrawal_locked","summary":"Another withdrawal is being processed for this customer (concurrent lock)","id":"paths/~1loans/post/responses/409/content/application~1problem+json/examples/withdrawal_locked"},"paths/~1loans/post/responses/422/content/application~1problem+json/examples/missing_required_field":{"value":{"type":"https://docs.dinie.com/errors/validation-failed","title":"Validation Failed","status":422,"detail":"Required field is missing (`credit_offer_id`, `simulation_id`, `installment_count`, `installment_amount`, `first_due_date`)","code":"missing_required_field"},"key":"missing_required_field","summary":"Required field is missing (`credit_offer_id`, `simulation_id`, `installment_count`, `installment_amount`, `first_due_date`)","id":"paths/~1loans/post/responses/422/content/application~1problem+json/examples/missing_required_field"},"paths/~1loans/post/responses/422/content/application~1problem+json/examples/offer_expired":{"value":{"type":"https://docs.dinie.com/errors/validation-failed","title":"Validation Failed","status":422,"detail":"Credit offer has expired (`valid_until` has passed or superseded)","code":"offer_expired"},"key":"offer_expired","summary":"Credit offer has expired (`valid_until` has passed or superseded)","id":"paths/~1loans/post/responses/422/content/application~1problem+json/examples/offer_expired"},"paths/~1loans/post/responses/422/content/application~1problem+json/examples/kyc_incomplete":{"value":{"type":"https://docs.dinie.com/errors/validation-failed","title":"Validation Failed","status":422,"detail":"Customer has pending or rejected KYC requirements","code":"kyc_incomplete"},"key":"kyc_incomplete","summary":"Customer has pending or rejected KYC requirements","id":"paths/~1loans/post/responses/422/content/application~1problem+json/examples/kyc_incomplete"},"paths/~1loans/post/responses/422/content/application~1problem+json/examples/invalid_amount":{"value":{"type":"https://docs.dinie.com/errors/validation-failed","title":"Validation Failed","status":422,"detail":"`amount` exceeds `approved_amount` or is not a valid monetary value","code":"invalid_amount"},"key":"invalid_amount","summary":"`amount` exceeds `approved_amount` or is not a valid monetary value","id":"paths/~1loans/post/responses/422/content/application~1problem+json/examples/invalid_amount"},"paths/~1loans/post/responses/422/content/application~1problem+json/examples/invalid_installments":{"value":{"type":"https://docs.dinie.com/errors/validation-failed","title":"Validation Failed","status":422,"detail":"`installment_count` is outside the allowed range","code":"invalid_installments"},"key":"invalid_installments","summary":"`installment_count` is outside the allowed range","id":"paths/~1loans/post/responses/422/content/application~1problem+json/examples/invalid_installments"},"paths/~1loans/post/responses/422/content/application~1problem+json/examples/simulation_mismatch":{"value":{"type":"https://docs.dinie.com/errors/validation-failed","title":"Validation Failed","status":422,"detail":"`installment_count`, `installment_amount`, or `first_due_date` do not match the referenced simulation","code":"simulation_mismatch"},"key":"simulation_mismatch","summary":"`installment_count`, `installment_amount`, or `first_due_date` do not match the referenced simulation","id":"paths/~1loans/post/responses/422/content/application~1problem+json/examples/simulation_mismatch"},"paths/~1loans/post/responses/429/content/application~1problem+json/example":{"value":{"type":"https://docs.dinie.com/errors/rate-limit-exceeded","title":"Rate Limit Exceeded","status":429,"detail":"Too many requests. Retry after 30 seconds."},"id":"paths/~1loans/post/responses/429/content/application~1problem+json/example"},"paths/~1loans/post/responses/500/content/application~1problem+json/example":{"value":{"type":"https://docs.dinie.com/errors/internal","title":"Internal Error","status":500,"detail":"An unexpected error occurred."},"id":"paths/~1loans/post/responses/500/content/application~1problem+json/example"},"paths/~1loans~1{loan_id}/get/responses/200/content/application~1json/example":{"value":{"id":"ln_550e8400e29b41d4a716446655440001","credit_offer_id":"co_550e8400e29b41d4a716446655440000","customer_id":"cust_550e8400e29b41d4a716446655440000","simulation_id":"sim_550e8400e29b41d4a716446655440001","status":"active","requested_amount":25000,"principal_amount":29375,"iof_amount":1875,"monthly_interest_rate":3.5,"annual_interest_rate":51.11,"monthly_cet_rate":2,"annual_cet_rate":233.18,"total_amount":31989.36,"installment_amount":7997.34,"first_due_date":"2026-04-03","installment_count":4,"ccb_number":"CCB-2026-001234","disbursement_method":"pix","signing_url":null,"created_at":1709550000,"updated_at":1709647200},"id":"paths/~1loans~1{loan_id}/get/responses/200/content/application~1json/example"},"paths/~1loans~1{loan_id}/get/responses/401/content/application~1problem+json/examples/missing_token":{"value":{"type":"https://docs.dinie.com/errors/authentication-failed","title":"Authentication Failed","status":401,"detail":"Authorization header is missing","code":"missing_token"},"key":"missing_token","summary":"Authorization header is missing","id":"paths/~1loans~1{loan_id}/get/responses/401/content/application~1problem+json/examples/missing_token"},"paths/~1loans~1{loan_id}/get/responses/401/content/application~1problem+json/examples/invalid_token":{"value":{"type":"https://docs.dinie.com/errors/authentication-failed","title":"Authentication Failed","status":401,"detail":"Bearer token is invalid or malformed","code":"invalid_token"},"key":"invalid_token","summary":"Bearer token is invalid or malformed","id":"paths/~1loans~1{loan_id}/get/responses/401/content/application~1problem+json/examples/invalid_token"},"paths/~1loans~1{loan_id}/get/responses/401/content/application~1problem+json/examples/token_expired":{"value":{"type":"https://docs.dinie.com/errors/authentication-failed","title":"Authentication Failed","status":401,"detail":"Bearer token has expired","code":"token_expired"},"key":"token_expired","summary":"Bearer token has expired","id":"paths/~1loans~1{loan_id}/get/responses/401/content/application~1problem+json/examples/token_expired"},"paths/~1loans~1{loan_id}/get/responses/404/content/application~1problem+json/examples/loan_not_found":{"value":{"type":"https://docs.dinie.com/errors/not-found","title":"Not Found","status":404,"detail":"Loan ID does not exist or does not belong to this partner","code":"loan_not_found"},"key":"loan_not_found","summary":"Loan ID does not exist or does not belong to this partner","id":"paths/~1loans~1{loan_id}/get/responses/404/content/application~1problem+json/examples/loan_not_found"},"paths/~1loans~1{loan_id}/get/responses/429/content/application~1problem+json/example":{"value":{"type":"https://docs.dinie.com/errors/rate-limit-exceeded","title":"Rate Limit Exceeded","status":429,"detail":"Too many requests. Retry after 30 seconds."},"id":"paths/~1loans~1{loan_id}/get/responses/429/content/application~1problem+json/example"},"paths/~1loans~1{loan_id}/get/responses/500/content/application~1problem+json/example":{"value":{"type":"https://docs.dinie.com/errors/internal","title":"Internal Error","status":500,"detail":"An unexpected error occurred."},"id":"paths/~1loans~1{loan_id}/get/responses/500/content/application~1problem+json/example"},"paths/~1loans~1{loan_id}~1transactions/get/responses/200/content/application~1json/example":{"value":{"data":[{"id":"tx_550e8400e29b41d4a716446655440000","loan_id":"ln_550e8400e29b41d4a716446655440001","type":"installment","due_date":"2026-04-03","status":"paid","amount_due":2500,"amount_paid":2500,"amount_remaining":0,"principal":2083.33,"interest":375,"fees":41.67,"days_overdue":0,"paid_at":1775383200,"created_at":1709550000,"updated_at":1775383200},{"id":"tx_660e8400e29b41d4a716446655440001","loan_id":"ln_550e8400e29b41d4a716446655440001","type":"installment","due_date":"2026-05-03","status":"pending","amount_due":2500,"amount_paid":0,"amount_remaining":2500,"principal":2083.33,"interest":375,"fees":41.67,"days_overdue":0,"paid_at":null,"created_at":1709550000,"updated_at":1709550000}],"has_more":true},"id":"paths/~1loans~1{loan_id}~1transactions/get/responses/200/content/application~1json/example"},"paths/~1loans~1{loan_id}~1transactions/get/responses/400/content/application~1problem+json/examples/invalid_limit":{"value":{"type":"https://docs.dinie.com/errors/invalid-request","title":"Invalid Request","status":400,"detail":"`limit` is not a valid integer or is outside 1–100 range","code":"invalid_limit"},"key":"invalid_limit","summary":"`limit` is not a valid integer or is outside 1–100 range","id":"paths/~1loans~1{loan_id}~1transactions/get/responses/400/content/application~1problem+json/examples/invalid_limit"},"paths/~1loans~1{loan_id}~1transactions/get/responses/400/content/application~1problem+json/examples/invalid_cursor":{"value":{"type":"https://docs.dinie.com/errors/invalid-request","title":"Invalid Request","status":400,"detail":"`starting_after` references a non-existent transaction","code":"invalid_cursor"},"key":"invalid_cursor","summary":"`starting_after` references a non-existent transaction","id":"paths/~1loans~1{loan_id}~1transactions/get/responses/400/content/application~1problem+json/examples/invalid_cursor"},"paths/~1loans~1{loan_id}~1transactions/get/responses/401/content/application~1problem+json/examples/missing_token":{"value":{"type":"https://docs.dinie.com/errors/authentication-failed","title":"Authentication Failed","status":401,"detail":"Authorization header is missing","code":"missing_token"},"key":"missing_token","summary":"Authorization header is missing","id":"paths/~1loans~1{loan_id}~1transactions/get/responses/401/content/application~1problem+json/examples/missing_token"},"paths/~1loans~1{loan_id}~1transactions/get/responses/401/content/application~1problem+json/examples/invalid_token":{"value":{"type":"https://docs.dinie.com/errors/authentication-failed","title":"Authentication Failed","status":401,"detail":"Bearer token is invalid or malformed","code":"invalid_token"},"key":"invalid_token","summary":"Bearer token is invalid or malformed","id":"paths/~1loans~1{loan_id}~1transactions/get/responses/401/content/application~1problem+json/examples/invalid_token"},"paths/~1loans~1{loan_id}~1transactions/get/responses/401/content/application~1problem+json/examples/token_expired":{"value":{"type":"https://docs.dinie.com/errors/authentication-failed","title":"Authentication Failed","status":401,"detail":"Bearer token has expired","code":"token_expired"},"key":"token_expired","summary":"Bearer token has expired","id":"paths/~1loans~1{loan_id}~1transactions/get/responses/401/content/application~1problem+json/examples/token_expired"},"paths/~1loans~1{loan_id}~1transactions/get/responses/404/content/application~1problem+json/examples/loan_not_found":{"value":{"type":"https://docs.dinie.com/errors/not-found","title":"Not Found","status":404,"detail":"Loan ID does not exist or does not belong to this partner","code":"loan_not_found"},"key":"loan_not_found","summary":"Loan ID does not exist or does not belong to this partner","id":"paths/~1loans~1{loan_id}~1transactions/get/responses/404/content/application~1problem+json/examples/loan_not_found"},"paths/~1loans~1{loan_id}~1transactions/get/responses/429/content/application~1problem+json/example":{"value":{"type":"https://docs.dinie.com/errors/rate-limit-exceeded","title":"Rate Limit Exceeded","status":429,"detail":"Too many requests. Retry after 30 seconds."},"id":"paths/~1loans~1{loan_id}~1transactions/get/responses/429/content/application~1problem+json/example"},"paths/~1loans~1{loan_id}~1transactions/get/responses/500/content/application~1problem+json/example":{"value":{"type":"https://docs.dinie.com/errors/internal","title":"Internal Error","status":500,"detail":"An unexpected error occurred."},"id":"paths/~1loans~1{loan_id}~1transactions/get/responses/500/content/application~1problem+json/example"},"paths/loan.created/post/requestBody/content/application~1json/example":{"value":{"type":"loan.created","id":"evt_550e8400e29b41d4a716446655440006","api_version":"2026-03-01","created_at":1772812800,"delivery_id":"dlv_550e8400e29b41d4a716446655440006","timestamp":1772812800,"data":{"id":"ln_550e8400e29b41d4a716446655440001","credit_offer_id":"co_550e8400e29b41d4a716446655440000","customer_id":"cust_550e8400e29b41d4a716446655440000","status":"awaiting_signatures","requested_amount":25000,"installment_count":12,"signing_url":"https://clicksign.com/sign/abc123"}},"id":"paths/loan.created/post/requestBody/content/application~1json/example"},"paths/loan.signature_received/post/requestBody/content/application~1json/example":{"value":{"type":"loan.signature_received","id":"evt_550e8400e29b41d4a716446655440008","api_version":"2026-03-01","created_at":1772877600,"delivery_id":"dlv_550e8400e29b41d4a716446655440008","timestamp":1772877600,"data":{"id":"ln_550e8400e29b41d4a716446655440001","status":"awaiting_signatures","signer":{"name":"Joao Silva","cpf":"123.456.789-00","signed_at":1772877600},"signatures_received":1,"signatures_required":2}},"id":"paths/loan.signature_received/post/requestBody/content/application~1json/example"},"paths/loan.processing/post/requestBody/content/application~1json/example":{"value":{"type":"loan.processing","id":"evt_550e8400e29b41d4a716446655440009","api_version":"2026-03-01","created_at":1772881200,"delivery_id":"dlv_550e8400e29b41d4a716446655440009","timestamp":1772881200,"data":{"id":"ln_550e8400e29b41d4a716446655440001","credit_offer_id":"co_550e8400e29b41d4a716446655440000","customer_id":"cust_550e8400e29b41d4a716446655440000","status":"processing","ccb_number":"CCB-2026-001234","disbursement_method":"pix"}},"id":"paths/loan.processing/post/requestBody/content/application~1json/example"},"paths/loan.active/post/requestBody/content/application~1json/example":{"value":{"type":"loan.active","id":"evt_550e8400e29b41d4a71644665544000a","api_version":"2026-03-01","created_at":1772884800,"delivery_id":"dlv_550e8400e29b41d4a71644665544000a","timestamp":1772884800,"data":{"id":"ln_550e8400e29b41d4a716446655440001","status":"active","requested_amount":25000,"principal_amount":29375}},"id":"paths/loan.active/post/requestBody/content/application~1json/example"},"paths/loan.payment_received/post/requestBody/content/application~1json/example":{"value":{"type":"loan.payment_received","id":"evt_550e8400e29b41d4a71644665544000b","api_version":"2026-03-01","created_at":1775383200,"delivery_id":"dlv_550e8400e29b41d4a71644665544000b","timestamp":1775383200,"data":{"id":"ln_550e8400e29b41d4a716446655440001","status":"active","payment":{"amount":2289.42,"paid_at":1775383200,"installment_number":1}}},"id":"paths/loan.payment_received/post/requestBody/content/application~1json/example"},"paths/loan.finished/post/requestBody/content/application~1json/example":{"value":{"type":"loan.finished","id":"evt_550e8400e29b41d4a71644665544000c","api_version":"2026-03-01","created_at":1792177200,"delivery_id":"dlv_550e8400e29b41d4a71644665544000c","timestamp":1792177200,"data":{"id":"ln_550e8400e29b41d4a716446655440001","status":"finished"}},"id":"paths/loan.finished/post/requestBody/content/application~1json/example"},"paths/loan.cancelled/post/requestBody/content/application~1json/example":{"value":{"type":"loan.cancelled","id":"evt_550e8400e29b41d4a71644665544000d","api_version":"2026-03-01","created_at":1775295000,"delivery_id":"dlv_550e8400e29b41d4a71644665544000d","timestamp":1775295000,"data":{"id":"ln_550e8400e29b41d4a716446655440001","status":"cancelled"}},"id":"paths/loan.cancelled/post/requestBody/content/application~1json/example"},"paths/loan.error/post/requestBody/content/application~1json/example":{"value":{"type":"loan.error","id":"evt_550e8400e29b41d4a71644665544000e","api_version":"2026-03-01","created_at":1775286900,"delivery_id":"dlv_550e8400e29b41d4a71644665544000e","timestamp":1775286900,"data":{"id":"ln_550e8400e29b41d4a716446655440001","status":"error","error":{"code":"disbursement_failed","message":"Falha na transferência bancária"}}},"id":"paths/loan.error/post/requestBody/content/application~1json/example"},"paths/~1webhooks~1endpoints/post/requestBody/content/application~1json/example":{"value":{"url":"https://parceiro.example.com/webhooks/dinie","events":["customer.active","credit_offer.available","loan.*"],"description":"Webhook de produção"},"id":"paths/~1webhooks~1endpoints/post/requestBody/content/application~1json/example"},"paths/~1webhooks~1endpoints/post/responses/201/content/application~1json/example":{"value":{"id":"we_550e8400e29b41d4a716446655440000","url":"https://parceiro.example.com/webhooks/dinie","events":["customer.active","credit_offer.available","loan.*"],"description":"Webhook de produção","status":"active","secret":"whsec_a1b2c3d4e5f6g7h8i9j0k1l2m3n4o5p6q7r8s9t0","created_at":1772791200,"updated_at":1772877600},"id":"paths/~1webhooks~1endpoints/post/responses/201/content/application~1json/example"},"paths/~1webhooks~1endpoints/post/responses/400/content/application~1problem+json/examples/invalid_content_type":{"value":{"type":"https://docs.dinie.com/errors/invalid-request","title":"Invalid Request","status":400,"detail":"`Content-Type` is not `application/json`","code":"invalid_content_type"},"key":"invalid_content_type","summary":"`Content-Type` is not `application/json`","id":"paths/~1webhooks~1endpoints/post/responses/400/content/application~1problem+json/examples/invalid_content_type"},"paths/~1webhooks~1endpoints/post/responses/400/content/application~1problem+json/examples/malformed_body":{"value":{"type":"https://docs.dinie.com/errors/invalid-request","title":"Invalid Request","status":400,"detail":"Request body is not valid JSON","code":"malformed_body"},"key":"malformed_body","summary":"Request body is not valid JSON","id":"paths/~1webhooks~1endpoints/post/responses/400/content/application~1problem+json/examples/malformed_body"},"paths/~1webhooks~1endpoints/post/responses/401/content/application~1problem+json/examples/missing_token":{"value":{"type":"https://docs.dinie.com/errors/authentication-failed","title":"Authentication Failed","status":401,"detail":"Authorization header is missing","code":"missing_token"},"key":"missing_token","summary":"Authorization header is missing","id":"paths/~1webhooks~1endpoints/post/responses/401/content/application~1problem+json/examples/missing_token"},"paths/~1webhooks~1endpoints/post/responses/401/content/application~1problem+json/examples/invalid_token":{"value":{"type":"https://docs.dinie.com/errors/authentication-failed","title":"Authentication Failed","status":401,"detail":"Bearer token is invalid or malformed","code":"invalid_token"},"key":"invalid_token","summary":"Bearer token is invalid or malformed","id":"paths/~1webhooks~1endpoints/post/responses/401/content/application~1problem+json/examples/invalid_token"},"paths/~1webhooks~1endpoints/post/responses/401/content/application~1problem+json/examples/token_expired":{"value":{"type":"https://docs.dinie.com/errors/authentication-failed","title":"Authentication Failed","status":401,"detail":"Bearer token has expired","code":"token_expired"},"key":"token_expired","summary":"Bearer token has expired","id":"paths/~1webhooks~1endpoints/post/responses/401/content/application~1problem+json/examples/token_expired"},"paths/~1webhooks~1endpoints/post/responses/422/content/application~1problem+json/examples/missing_required_field":{"value":{"type":"https://docs.dinie.com/errors/validation-failed","title":"Validation Failed","status":422,"detail":"`url` is missing","code":"missing_required_field"},"key":"missing_required_field","summary":"`url` is missing","id":"paths/~1webhooks~1endpoints/post/responses/422/content/application~1problem+json/examples/missing_required_field"},"paths/~1webhooks~1endpoints/post/responses/422/content/application~1problem+json/examples/invalid_url":{"value":{"type":"https://docs.dinie.com/errors/validation-failed","title":"Validation Failed","status":422,"detail":"`url` is not a valid HTTPS URL","code":"invalid_url"},"key":"invalid_url","summary":"`url` is not a valid HTTPS URL","id":"paths/~1webhooks~1endpoints/post/responses/422/content/application~1problem+json/examples/invalid_url"},"paths/~1webhooks~1endpoints/post/responses/422/content/application~1problem+json/examples/invalid_events":{"value":{"type":"https://docs.dinie.com/errors/validation-failed","title":"Validation Failed","status":422,"detail":"`events` contains unrecognized event types","code":"invalid_events"},"key":"invalid_events","summary":"`events` contains unrecognized event types","id":"paths/~1webhooks~1endpoints/post/responses/422/content/application~1problem+json/examples/invalid_events"},"paths/~1webhooks~1endpoints/post/responses/429/content/application~1problem+json/example":{"value":{"type":"https://docs.dinie.com/errors/rate-limit-exceeded","title":"Rate Limit Exceeded","status":429,"detail":"Too many requests. Retry after 30 seconds."},"id":"paths/~1webhooks~1endpoints/post/responses/429/content/application~1problem+json/example"},"paths/~1webhooks~1endpoints/post/responses/500/content/application~1problem+json/example":{"value":{"type":"https://docs.dinie.com/errors/internal","title":"Internal Error","status":500,"detail":"An unexpected error occurred."},"id":"paths/~1webhooks~1endpoints/post/responses/500/content/application~1problem+json/example"},"paths/~1webhooks~1endpoints/get/responses/200/content/application~1json/example":{"value":{"data":[{"id":"we_550e8400e29b41d4a716446655440000","url":"https://parceiro.example.com/webhooks/dinie","events":["customer.active","credit_offer.available","loan.*"],"description":"Webhook de produção","status":"active","created_at":1772791200,"updated_at":1772877600}],"has_more":false},"id":"paths/~1webhooks~1endpoints/get/responses/200/content/application~1json/example"},"paths/~1webhooks~1endpoints/get/responses/401/content/application~1problem+json/examples/missing_token":{"value":{"type":"https://docs.dinie.com/errors/authentication-failed","title":"Authentication Failed","status":401,"detail":"Authorization header is missing","code":"missing_token"},"key":"missing_token","summary":"Authorization header is missing","id":"paths/~1webhooks~1endpoints/get/responses/401/content/application~1problem+json/examples/missing_token"},"paths/~1webhooks~1endpoints/get/responses/401/content/application~1problem+json/examples/invalid_token":{"value":{"type":"https://docs.dinie.com/errors/authentication-failed","title":"Authentication Failed","status":401,"detail":"Bearer token is invalid or malformed","code":"invalid_token"},"key":"invalid_token","summary":"Bearer token is invalid or malformed","id":"paths/~1webhooks~1endpoints/get/responses/401/content/application~1problem+json/examples/invalid_token"},"paths/~1webhooks~1endpoints/get/responses/401/content/application~1problem+json/examples/token_expired":{"value":{"type":"https://docs.dinie.com/errors/authentication-failed","title":"Authentication Failed","status":401,"detail":"Bearer token has expired","code":"token_expired"},"key":"token_expired","summary":"Bearer token has expired","id":"paths/~1webhooks~1endpoints/get/responses/401/content/application~1problem+json/examples/token_expired"},"paths/~1webhooks~1endpoints/get/responses/429/content/application~1problem+json/example":{"value":{"type":"https://docs.dinie.com/errors/rate-limit-exceeded","title":"Rate Limit Exceeded","status":429,"detail":"Too many requests. Retry after 30 seconds."},"id":"paths/~1webhooks~1endpoints/get/responses/429/content/application~1problem+json/example"},"paths/~1webhooks~1endpoints/get/responses/500/content/application~1problem+json/example":{"value":{"type":"https://docs.dinie.com/errors/internal","title":"Internal Error","status":500,"detail":"An unexpected error occurred."},"id":"paths/~1webhooks~1endpoints/get/responses/500/content/application~1problem+json/example"},"paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/get/responses/200/content/application~1json/example":{"value":{"id":"we_550e8400e29b41d4a716446655440000","url":"https://parceiro.example.com/webhooks/dinie","events":["customer.active","credit_offer.available","loan.*"],"description":"Webhook de produção","status":"active","created_at":1772791200,"updated_at":1772877600},"id":"paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/get/responses/200/content/application~1json/example"},"paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/get/responses/401/content/application~1problem+json/examples/missing_token":{"value":{"type":"https://docs.dinie.com/errors/authentication-failed","title":"Authentication Failed","status":401,"detail":"Authorization header is missing","code":"missing_token"},"key":"missing_token","summary":"Authorization header is missing","id":"paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/get/responses/401/content/application~1problem+json/examples/missing_token"},"paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/get/responses/401/content/application~1problem+json/examples/invalid_token":{"value":{"type":"https://docs.dinie.com/errors/authentication-failed","title":"Authentication Failed","status":401,"detail":"Bearer token is invalid or malformed","code":"invalid_token"},"key":"invalid_token","summary":"Bearer token is invalid or malformed","id":"paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/get/responses/401/content/application~1problem+json/examples/invalid_token"},"paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/get/responses/401/content/application~1problem+json/examples/token_expired":{"value":{"type":"https://docs.dinie.com/errors/authentication-failed","title":"Authentication Failed","status":401,"detail":"Bearer token has expired","code":"token_expired"},"key":"token_expired","summary":"Bearer token has expired","id":"paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/get/responses/401/content/application~1problem+json/examples/token_expired"},"paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/get/responses/404/content/application~1problem+json/examples/webhook_endpoint_not_found":{"value":{"type":"https://docs.dinie.com/errors/not-found","title":"Not Found","status":404,"detail":"Endpoint ID does not exist or does not belong to this partner","code":"webhook_endpoint_not_found"},"key":"webhook_endpoint_not_found","summary":"Endpoint ID does not exist or does not belong to this partner","id":"paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/get/responses/404/content/application~1problem+json/examples/webhook_endpoint_not_found"},"paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/get/responses/429/content/application~1problem+json/example":{"value":{"type":"https://docs.dinie.com/errors/rate-limit-exceeded","title":"Rate Limit Exceeded","status":429,"detail":"Too many requests. Retry after 30 seconds."},"id":"paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/get/responses/429/content/application~1problem+json/example"},"paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/get/responses/500/content/application~1problem+json/example":{"value":{"type":"https://docs.dinie.com/errors/internal","title":"Internal Error","status":500,"detail":"An unexpected error occurred."},"id":"paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/get/responses/500/content/application~1problem+json/example"},"paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/patch/requestBody/content/application~1json/example":{"value":{"events":["customer.*","loan.*"],"status":"active"},"id":"paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/patch/requestBody/content/application~1json/example"},"paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/patch/responses/200/content/application~1json/example":{"value":{"id":"we_550e8400e29b41d4a716446655440000","url":"https://parceiro.example.com/webhooks/dinie","events":["customer.*","loan.*"],"description":"Webhook de produção","status":"active","created_at":1772791200,"updated_at":1709629200},"id":"paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/patch/responses/200/content/application~1json/example"},"paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/patch/responses/400/content/application~1problem+json/examples/invalid_content_type":{"value":{"type":"https://docs.dinie.com/errors/invalid-request","title":"Invalid Request","status":400,"detail":"`Content-Type` is not `application/json`","code":"invalid_content_type"},"key":"invalid_content_type","summary":"`Content-Type` is not `application/json`","id":"paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/patch/responses/400/content/application~1problem+json/examples/invalid_content_type"},"paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/patch/responses/400/content/application~1problem+json/examples/malformed_body":{"value":{"type":"https://docs.dinie.com/errors/invalid-request","title":"Invalid Request","status":400,"detail":"Request body is not valid JSON","code":"malformed_body"},"key":"malformed_body","summary":"Request body is not valid JSON","id":"paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/patch/responses/400/content/application~1problem+json/examples/malformed_body"},"paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/patch/responses/401/content/application~1problem+json/examples/missing_token":{"value":{"type":"https://docs.dinie.com/errors/authentication-failed","title":"Authentication Failed","status":401,"detail":"Authorization header is missing","code":"missing_token"},"key":"missing_token","summary":"Authorization header is missing","id":"paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/patch/responses/401/content/application~1problem+json/examples/missing_token"},"paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/patch/responses/401/content/application~1problem+json/examples/invalid_token":{"value":{"type":"https://docs.dinie.com/errors/authentication-failed","title":"Authentication Failed","status":401,"detail":"Bearer token is invalid or malformed","code":"invalid_token"},"key":"invalid_token","summary":"Bearer token is invalid or malformed","id":"paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/patch/responses/401/content/application~1problem+json/examples/invalid_token"},"paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/patch/responses/401/content/application~1problem+json/examples/token_expired":{"value":{"type":"https://docs.dinie.com/errors/authentication-failed","title":"Authentication Failed","status":401,"detail":"Bearer token has expired","code":"token_expired"},"key":"token_expired","summary":"Bearer token has expired","id":"paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/patch/responses/401/content/application~1problem+json/examples/token_expired"},"paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/patch/responses/404/content/application~1problem+json/examples/webhook_endpoint_not_found":{"value":{"type":"https://docs.dinie.com/errors/not-found","title":"Not Found","status":404,"detail":"Endpoint ID does not exist or does not belong to this partner","code":"webhook_endpoint_not_found"},"key":"webhook_endpoint_not_found","summary":"Endpoint ID does not exist or does not belong to this partner","id":"paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/patch/responses/404/content/application~1problem+json/examples/webhook_endpoint_not_found"},"paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/patch/responses/422/content/application~1problem+json/examples/invalid_url":{"value":{"type":"https://docs.dinie.com/errors/validation-failed","title":"Validation Failed","status":422,"detail":"`url` is not a valid HTTPS URL","code":"invalid_url"},"key":"invalid_url","summary":"`url` is not a valid HTTPS URL","id":"paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/patch/responses/422/content/application~1problem+json/examples/invalid_url"},"paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/patch/responses/422/content/application~1problem+json/examples/invalid_events":{"value":{"type":"https://docs.dinie.com/errors/validation-failed","title":"Validation Failed","status":422,"detail":"`events` contains unrecognized event types","code":"invalid_events"},"key":"invalid_events","summary":"`events` contains unrecognized event types","id":"paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/patch/responses/422/content/application~1problem+json/examples/invalid_events"},"paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/patch/responses/422/content/application~1problem+json/examples/invalid_status":{"value":{"type":"https://docs.dinie.com/errors/validation-failed","title":"Validation Failed","status":422,"detail":"`status` is not `active` or `disabled`","code":"invalid_status"},"key":"invalid_status","summary":"`status` is not `active` or `disabled`","id":"paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/patch/responses/422/content/application~1problem+json/examples/invalid_status"},"paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/patch/responses/429/content/application~1problem+json/example":{"value":{"type":"https://docs.dinie.com/errors/rate-limit-exceeded","title":"Rate Limit Exceeded","status":429,"detail":"Too many requests. Retry after 30 seconds."},"id":"paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/patch/responses/429/content/application~1problem+json/example"},"paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/patch/responses/500/content/application~1problem+json/example":{"value":{"type":"https://docs.dinie.com/errors/internal","title":"Internal Error","status":500,"detail":"An unexpected error occurred."},"id":"paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/patch/responses/500/content/application~1problem+json/example"},"paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/delete/responses/401/content/application~1problem+json/examples/missing_token":{"value":{"type":"https://docs.dinie.com/errors/authentication-failed","title":"Authentication Failed","status":401,"detail":"Authorization header is missing","code":"missing_token"},"key":"missing_token","summary":"Authorization header is missing","id":"paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/delete/responses/401/content/application~1problem+json/examples/missing_token"},"paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/delete/responses/401/content/application~1problem+json/examples/invalid_token":{"value":{"type":"https://docs.dinie.com/errors/authentication-failed","title":"Authentication Failed","status":401,"detail":"Bearer token is invalid or malformed","code":"invalid_token"},"key":"invalid_token","summary":"Bearer token is invalid or malformed","id":"paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/delete/responses/401/content/application~1problem+json/examples/invalid_token"},"paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/delete/responses/401/content/application~1problem+json/examples/token_expired":{"value":{"type":"https://docs.dinie.com/errors/authentication-failed","title":"Authentication Failed","status":401,"detail":"Bearer token has expired","code":"token_expired"},"key":"token_expired","summary":"Bearer token has expired","id":"paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/delete/responses/401/content/application~1problem+json/examples/token_expired"},"paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/delete/responses/404/content/application~1problem+json/examples/webhook_endpoint_not_found":{"value":{"type":"https://docs.dinie.com/errors/not-found","title":"Not Found","status":404,"detail":"Endpoint ID does not exist or does not belong to this partner","code":"webhook_endpoint_not_found"},"key":"webhook_endpoint_not_found","summary":"Endpoint ID does not exist or does not belong to this partner","id":"paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/delete/responses/404/content/application~1problem+json/examples/webhook_endpoint_not_found"},"paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/delete/responses/429/content/application~1problem+json/example":{"value":{"type":"https://docs.dinie.com/errors/rate-limit-exceeded","title":"Rate Limit Exceeded","status":429,"detail":"Too many requests. Retry after 30 seconds."},"id":"paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/delete/responses/429/content/application~1problem+json/example"},"paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/delete/responses/500/content/application~1problem+json/example":{"value":{"type":"https://docs.dinie.com/errors/internal","title":"Internal Error","status":500,"detail":"An unexpected error occurred."},"id":"paths/~1webhooks~1endpoints~1{webhook_endpoint_id}/delete/responses/500/content/application~1problem+json/example"},"paths/~1webhooks~1endpoints~1{webhook_endpoint_id}~1rotate-secret/post/requestBody/content/application~1json/example":{"value":{"expire_current_in":3600},"id":"paths/~1webhooks~1endpoints~1{webhook_endpoint_id}~1rotate-secret/post/requestBody/content/application~1json/example"},"paths/~1webhooks~1endpoints~1{webhook_endpoint_id}~1rotate-secret/post/responses/200/content/application~1json/example":{"value":{"id":"we_550e8400e29b41d4a716446655440000","secret":"whsec_novo1b2c3d4e5f6g7h8i9j0k1l2m3n4o5p6q7r8","previous_secret_expires_at":1709550000},"id":"paths/~1webhooks~1endpoints~1{webhook_endpoint_id}~1rotate-secret/post/responses/200/content/application~1json/example"},"paths/~1webhooks~1endpoints~1{webhook_endpoint_id}~1rotate-secret/post/responses/400/content/application~1problem+json/examples/invalid_content_type":{"value":{"type":"https://docs.dinie.com/errors/invalid-request","title":"Invalid Request","status":400,"detail":"`Content-Type` is not `application/json`","code":"invalid_content_type"},"key":"invalid_content_type","summary":"`Content-Type` is not `application/json`","id":"paths/~1webhooks~1endpoints~1{webhook_endpoint_id}~1rotate-secret/post/responses/400/content/application~1problem+json/examples/invalid_content_type"},"paths/~1webhooks~1endpoints~1{webhook_endpoint_id}~1rotate-secret/post/responses/401/content/application~1problem+json/examples/missing_token":{"value":{"type":"https://docs.dinie.com/errors/authentication-failed","title":"Authentication Failed","status":401,"detail":"Authorization header is missing","code":"missing_token"},"key":"missing_token","summary":"Authorization header is missing","id":"paths/~1webhooks~1endpoints~1{webhook_endpoint_id}~1rotate-secret/post/responses/401/content/application~1problem+json/examples/missing_token"},"paths/~1webhooks~1endpoints~1{webhook_endpoint_id}~1rotate-secret/post/responses/401/content/application~1problem+json/examples/invalid_token":{"value":{"type":"https://docs.dinie.com/errors/authentication-failed","title":"Authentication Failed","status":401,"detail":"Bearer token is invalid or malformed","code":"invalid_token"},"key":"invalid_token","summary":"Bearer token is invalid or malformed","id":"paths/~1webhooks~1endpoints~1{webhook_endpoint_id}~1rotate-secret/post/responses/401/content/application~1problem+json/examples/invalid_token"},"paths/~1webhooks~1endpoints~1{webhook_endpoint_id}~1rotate-secret/post/responses/401/content/application~1problem+json/examples/token_expired":{"value":{"type":"https://docs.dinie.com/errors/authentication-failed","title":"Authentication Failed","status":401,"detail":"Bearer token has expired","code":"token_expired"},"key":"token_expired","summary":"Bearer token has expired","id":"paths/~1webhooks~1endpoints~1{webhook_endpoint_id}~1rotate-secret/post/responses/401/content/application~1problem+json/examples/token_expired"},"paths/~1webhooks~1endpoints~1{webhook_endpoint_id}~1rotate-secret/post/responses/404/content/application~1problem+json/examples/webhook_endpoint_not_found":{"value":{"type":"https://docs.dinie.com/errors/not-found","title":"Not Found","status":404,"detail":"Endpoint ID does not exist or does not belong to this partner","code":"webhook_endpoint_not_found"},"key":"webhook_endpoint_not_found","summary":"Endpoint ID does not exist or does not belong to this partner","id":"paths/~1webhooks~1endpoints~1{webhook_endpoint_id}~1rotate-secret/post/responses/404/content/application~1problem+json/examples/webhook_endpoint_not_found"},"paths/~1webhooks~1endpoints~1{webhook_endpoint_id}~1rotate-secret/post/responses/422/content/application~1problem+json/examples/invalid_expire_current_in":{"value":{"type":"https://docs.dinie.com/errors/validation-failed","title":"Validation Failed","status":422,"detail":"`expire_current_in` is outside the 0–86400 range","code":"invalid_expire_current_in"},"key":"invalid_expire_current_in","summary":"`expire_current_in` is outside the 0–86400 range","id":"paths/~1webhooks~1endpoints~1{webhook_endpoint_id}~1rotate-secret/post/responses/422/content/application~1problem+json/examples/invalid_expire_current_in"},"paths/~1webhooks~1endpoints~1{webhook_endpoint_id}~1rotate-secret/post/responses/429/content/application~1problem+json/example":{"value":{"type":"https://docs.dinie.com/errors/rate-limit-exceeded","title":"Rate Limit Exceeded","status":429,"detail":"Too many requests. Retry after 30 seconds."},"id":"paths/~1webhooks~1endpoints~1{webhook_endpoint_id}~1rotate-secret/post/responses/429/content/application~1problem+json/example"},"paths/~1webhooks~1endpoints~1{webhook_endpoint_id}~1rotate-secret/post/responses/500/content/application~1problem+json/example":{"value":{"type":"https://docs.dinie.com/errors/internal","title":"Internal Error","status":500,"detail":"An unexpected error occurred."},"id":"paths/~1webhooks~1endpoints~1{webhook_endpoint_id}~1rotate-secret/post/responses/500/content/application~1problem+json/example"},"paths/~1webhooks~1endpoints~1{endpoint_id}~1deliveries/get/responses/401/content/application~1problem+json/examples/missing_token":{"value":{"type":"https://docs.dinie.com/errors/authentication-failed","title":"Authentication Failed","status":401,"detail":"Authorization header is missing","code":"missing_token"},"key":"missing_token","summary":"Authorization header is missing","id":"paths/~1webhooks~1endpoints~1{endpoint_id}~1deliveries/get/responses/401/content/application~1problem+json/examples/missing_token"},"paths/~1webhooks~1endpoints~1{endpoint_id}~1deliveries/get/responses/401/content/application~1problem+json/examples/invalid_token":{"value":{"type":"https://docs.dinie.com/errors/authentication-failed","title":"Authentication Failed","status":401,"detail":"Bearer token is invalid or malformed","code":"invalid_token"},"key":"invalid_token","summary":"Bearer token is invalid or malformed","id":"paths/~1webhooks~1endpoints~1{endpoint_id}~1deliveries/get/responses/401/content/application~1problem+json/examples/invalid_token"},"paths/~1webhooks~1endpoints~1{endpoint_id}~1deliveries/get/responses/401/content/application~1problem+json/examples/token_expired":{"value":{"type":"https://docs.dinie.com/errors/authentication-failed","title":"Authentication Failed","status":401,"detail":"Bearer token has expired","code":"token_expired"},"key":"token_expired","summary":"Bearer token has expired","id":"paths/~1webhooks~1endpoints~1{endpoint_id}~1deliveries/get/responses/401/content/application~1problem+json/examples/token_expired"},"paths/~1webhooks~1endpoints~1{endpoint_id}~1deliveries/get/responses/404/content/application~1problem+json/example":{"value":{"type":"https://docs.dinie.com/errors/not-found","title":"Not Found","status":404,"detail":"Endpoint ID does not exist or does not belong to this partner","code":"not_found"},"id":"paths/~1webhooks~1endpoints~1{endpoint_id}~1deliveries/get/responses/404/content/application~1problem+json/example"},"paths/~1webhooks~1endpoints~1{endpoint_id}~1deliveries/get/responses/429/content/application~1problem+json/example":{"value":{"type":"https://docs.dinie.com/errors/rate-limit-exceeded","title":"Rate Limit Exceeded","status":429,"detail":"Too many requests. Retry after 30 seconds."},"id":"paths/~1webhooks~1endpoints~1{endpoint_id}~1deliveries/get/responses/429/content/application~1problem+json/example"},"paths/~1webhooks~1endpoints~1{endpoint_id}~1deliveries/get/responses/500/content/application~1problem+json/example":{"value":{"type":"https://docs.dinie.com/errors/internal","title":"Internal Error","status":500,"detail":"An unexpected error occurred."},"id":"paths/~1webhooks~1endpoints~1{endpoint_id}~1deliveries/get/responses/500/content/application~1problem+json/example"},"paths/~1webhooks~1endpoints~1{endpoint_id}~1deliveries~1{id}~1retry/post/responses/401/content/application~1problem+json/examples/missing_token":{"value":{"type":"https://docs.dinie.com/errors/authentication-failed","title":"Authentication Failed","status":401,"detail":"Authorization header is missing","code":"missing_token"},"key":"missing_token","summary":"Authorization header is missing","id":"paths/~1webhooks~1endpoints~1{endpoint_id}~1deliveries~1{id}~1retry/post/responses/401/content/application~1problem+json/examples/missing_token"},"paths/~1webhooks~1endpoints~1{endpoint_id}~1deliveries~1{id}~1retry/post/responses/401/content/application~1problem+json/examples/invalid_token":{"value":{"type":"https://docs.dinie.com/errors/authentication-failed","title":"Authentication Failed","status":401,"detail":"Bearer token is invalid or malformed","code":"invalid_token"},"key":"invalid_token","summary":"Bearer token is invalid or malformed","id":"paths/~1webhooks~1endpoints~1{endpoint_id}~1deliveries~1{id}~1retry/post/responses/401/content/application~1problem+json/examples/invalid_token"},"paths/~1webhooks~1endpoints~1{endpoint_id}~1deliveries~1{id}~1retry/post/responses/401/content/application~1problem+json/examples/token_expired":{"value":{"type":"https://docs.dinie.com/errors/authentication-failed","title":"Authentication Failed","status":401,"detail":"Bearer token has expired","code":"token_expired"},"key":"token_expired","summary":"Bearer token has expired","id":"paths/~1webhooks~1endpoints~1{endpoint_id}~1deliveries~1{id}~1retry/post/responses/401/content/application~1problem+json/examples/token_expired"},"paths/~1webhooks~1endpoints~1{endpoint_id}~1deliveries~1{id}~1retry/post/responses/404/content/application~1problem+json/example":{"value":{"type":"https://docs.dinie.com/errors/not-found","title":"Not Found","status":404,"detail":"Endpoint ID does not exist or does not belong to this partner","code":"not_found"},"id":"paths/~1webhooks~1endpoints~1{endpoint_id}~1deliveries~1{id}~1retry/post/responses/404/content/application~1problem+json/example"},"paths/~1webhooks~1endpoints~1{endpoint_id}~1deliveries~1{id}~1retry/post/responses/409/content/application~1problem+json/example":{"value":{"type":"https://docs.dinie.com/errors/conflict","title":"Conflict","status":409,"detail":"Only failed deliveries can be retried","code":"delivery_not_retryable"},"id":"paths/~1webhooks~1endpoints~1{endpoint_id}~1deliveries~1{id}~1retry/post/responses/409/content/application~1problem+json/example"},"paths/~1webhooks~1endpoints~1{endpoint_id}~1deliveries~1{id}~1retry/post/responses/429/content/application~1problem+json/example":{"value":{"type":"https://docs.dinie.com/errors/rate-limit-exceeded","title":"Rate Limit Exceeded","status":429,"detail":"Too many requests. Retry after 30 seconds."},"id":"paths/~1webhooks~1endpoints~1{endpoint_id}~1deliveries~1{id}~1retry/post/responses/429/content/application~1problem+json/example"},"paths/~1webhooks~1endpoints~1{endpoint_id}~1deliveries~1{id}~1retry/post/responses/500/content/application~1problem+json/example":{"value":{"type":"https://docs.dinie.com/errors/internal","title":"Internal Error","status":500,"detail":"An unexpected error occurred."},"id":"paths/~1webhooks~1endpoints~1{endpoint_id}~1deliveries~1{id}~1retry/post/responses/500/content/application~1problem+json/example"}},"securitySchemeStore":{"bearerAuth":{"id":"bearerAuth","type":"http","scheme":"bearer","bearerFormat":"JWT","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"JWT token obtained via OAuth2 Client Credentials. Send "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"POST /auth/token"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"with your credentials ("},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"client_id"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" and "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"client_secret"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":") in the"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Authorization: Basic base64(client_id:client_secret)"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" header to receive an"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"access token. Include the token in all requests:"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Authorization: Bearer <token>"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":". The token expires in 1 hour (3600s)."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Prefixes: "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"dinie_cs_live_"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" (production), "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"dinie_cs_test_"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" (sandbox)."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The returned token is prefixed with "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"dinie_at_"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]}]},"oauth2":{"id":"oauth2","type":"oauth2","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"OAuth2 Client Credentials flow for obtaining access tokens."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Use "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"client_id"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" and "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"client_secret"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" to authenticate."},"children":[]}]}]}],"flows":{"clientCredentials":{"tokenUrl":"/api/v3/auth/token","scopes":{"kyc:read":"Read a customer's KYC state (requirements, attachments, status).","kyc:upload":"Upload a KYC attachment (document or selfie via the dedicated route).","kyc:submit":"Submit a customer's KYC bundle for review.","biometrics:create":"Mint a biometrics capture session for a customer (partner side of the handoff).","biometrics:exchange":"Exchange a biometrics bootstrap code for a scoped session token (kyc-app side of the handoff)."}}}},"webhookSignature":{"id":"webhookSignature","type":"apiKey","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"HMAC-SHA256 signature per the Standard Webhooks specification."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Verify using the "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"whsec_"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"-prefixed secret from endpoint creation."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The header contains base64-encoded signatures; the signed content"},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"is "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"{webhook-id}.{webhook-timestamp}.{body}"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]}],"in":"header","paramName":"webhook-signature"}},"servers":[{"url":"/_mock/en-us/apis/openapi","isMockServer":true,"description":"Mock server"},{"url":"https://api.dinie.com/api/v3","description":"Production"},{"url":"https://api-dev.dinietech.io/api/v3","description":"Sandbox"}],"logo":{"imageUrl":"/img/dinie-logo.svg","href":"https://docs.dinie.com"},"specType":"openapi"},"options":{"jsonSamplesExpandLevel":"all","onlyRequiredInSamples":true,"sortRequiredPropsFirst":true,"codeSamples":{"languages":[{"lang":"curl"},{"lang":"Python"},{"lang":"Node.js"},{"lang":"Ruby"}]},"feedback":{"hide":true,"settings":{"label":""}},"mockServer":{"url":"/_mock/en-us/apis/openapi","position":"first","description":"Mock server"},"disableRouter":true,"downloadUrls":[{"url":"/_bundle/@l10n/en-US/apis/openapi.json?download"},{"url":"/_bundle/@l10n/en-US/apis/openapi.yaml?download"}],"excludeFromSearch":false,"replayFeatures":{"graphql":false},"specType":"openapi","markdocOptions":{"tags":{},"nodes":{},"components":{}},"metadata":{"title":"Dinie API","description":"Embedded credit API for Dinie partners. Enables customer registration,\ncredit offer management, loan origination, and event delivery\nvia webhooks.\n"}},"baseSlug":"/en-us/apis/openapi","routesMapping":{}}