---
updatedAt: 2026-08-27T12:37:17.000Z
agentTools:
  projectIndex: https://developer.candis.io/llms.txt
---

# Create General Ledger Accounts

Receive requests and attempts to create General Ledger Accounts in Candis

| Request limit                                                              | Record limit                                                                                            | Batch size                      |
| -------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------- | ------------------------------- |
| 500 requests per minute per organization<br />2,500 per minute per holding | 3,000 records per minute per organization (burst 5,000)<br />4,800 per minute per holding (burst 8,000) | Maximum 100 records per request |

Both limits are evaluated on every request. A request is rejected when either is exceeded.

For requests containing the maximum of 100 records:

* Following an idle period, 50 consecutive requests are accepted without delay. This corresponds to the 5,000-record burst allowance.
* Sustained submission is subsequently paced at one request per 2 seconds, approximately 30 per minute.
* The allowance is restored to its ceiling after approximately 100 seconds without submissions.

[Rate Limiting Policy](/docs/rate-limiting-policy)

# OpenAPI definition

```json
{
  "openapi": "3.0.0",
  "paths": {
    "/v1/organizations/{organizationId}/imports/general-ledger-accounts": {
      "post": {
        "description": "Receive requests and attempts to create General Ledger Accounts in Candis",
        "operationId": "createGeneralLedgerAccounts",
        "parameters": [
          {
            "name": "organizationId",
            "required": true,
            "in": "path",
            "description": "The organization ID.",
            "schema": {
              "example": "alpha-organization",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "accountCode": {
                      "type": "string",
                      "description": "The unique General Ledger Account Code",
                      "example": "ABC-000"
                    },
                    "name": {
                      "type": "string",
                      "description": "General Ledger Account Label",
                      "example": "ABC-000"
                    }
                  },
                  "required": [
                    "accountCode",
                    "name"
                  ]
                }
              }
            }
          }
        },
        "responses": {
          "202": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "processId": {
                      "type": "string",
                      "description": "The unique identifier of the import request.",
                      "example": "9924bb4a-7ee9-4b6a-ac7b-30fdbe6b0031"
                    }
                  },
                  "required": [
                    "processId"
                  ]
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "errorCode": {
                      "type": "string",
                      "description": "The Error Code assigned to the issue encountered",
                      "enum": [
                        "UNAUTHORIZED",
                        "FORBIDDEN",
                        "BAD_REQUEST",
                        "SERVICE_UNAVAILABLE",
                        "INTERNAL_SERVER_ERROR",
                        "MISSING_REQUESTER_ID",
                        "BAD_INPUT",
                        "NOT_FOUND",
                        "EXPORTABLE_POSTINGS_NOT_FOUND",
                        "TOO_MANY_REQUEST",
                        "FAILED_TO_FETCH_DOWNLOAD_URL",
                        "FILE_NOT_FOUND"
                      ]
                    },
                    "message": {
                      "type": "string",
                      "description": "Description about the issue encountered"
                    },
                    "requestId": {
                      "type": "string",
                      "description": "This is the unique identifier for the request."
                    },
                    "errors": {
                      "description": "This is an optional output that can provide more details about the input parameters that may have caused an issue.",
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "index": {
                            "type": "string",
                            "description": "This identifies the index of the payload that has an issue."
                          },
                          "property": {
                            "type": "string",
                            "description": "This identifies the parameter that has an issue."
                          },
                          "messages": {
                            "description": "This provides more details about the parameter that has an issue.",
                            "type": "array",
                            "items": {
                              "type": "string"
                            }
                          }
                        },
                        "required": [
                          "property",
                          "messages"
                        ]
                      }
                    }
                  },
                  "required": [
                    "errorCode",
                    "message"
                  ]
                }
              }
            }
          },
          "429": {
            "description": "The request limit or the per-record limit for this endpoint has been exceeded. No records were imported, so the same request body can be resubmitted unchanged once the wait has elapsed.\n\nSee the [Rate Limiting Policy](https://developer.candis.io/docs/rate-limiting-policy) for the limits, response headers and retry guidance.",
            "headers": {
              "Retry-After": {
                "description": "Whole seconds to wait before retrying. See the Rate Limiting Policy for how the value is derived.",
                "schema": {
                  "type": "integer",
                  "example": 10
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "errorCode": {
                      "type": "string",
                      "description": "The Error Code assigned to the issue encountered",
                      "enum": [
                        "UNAUTHORIZED",
                        "FORBIDDEN",
                        "BAD_REQUEST",
                        "SERVICE_UNAVAILABLE",
                        "INTERNAL_SERVER_ERROR",
                        "MISSING_REQUESTER_ID",
                        "BAD_INPUT",
                        "NOT_FOUND",
                        "EXPORTABLE_POSTINGS_NOT_FOUND",
                        "TOO_MANY_REQUEST",
                        "FAILED_TO_FETCH_DOWNLOAD_URL",
                        "FILE_NOT_FOUND"
                      ]
                    },
                    "message": {
                      "type": "string",
                      "description": "Description about the issue encountered"
                    },
                    "requestId": {
                      "type": "string",
                      "description": "This is the unique identifier for the request."
                    },
                    "limit": {
                      "type": "string",
                      "description": "Which limit rejected the request: the request limit, which counts requests, or the record limit, which meters the records in the request body.",
                      "enum": [
                        "request",
                        "record"
                      ]
                    },
                    "scope": {
                      "type": "string",
                      "description": "Whose allowance was exhausted: the organization’s own, or the shared allowance of the holding it belongs to.",
                      "enum": [
                        "organization",
                        "holding"
                      ]
                    }
                  },
                  "required": [
                    "errorCode",
                    "message"
                  ]
                }
              }
            }
          },
          "503": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "errorCode": {
                      "type": "string",
                      "description": "The Error Code assigned to the issue encountered",
                      "enum": [
                        "UNAUTHORIZED",
                        "FORBIDDEN",
                        "BAD_REQUEST",
                        "SERVICE_UNAVAILABLE",
                        "INTERNAL_SERVER_ERROR",
                        "MISSING_REQUESTER_ID",
                        "BAD_INPUT",
                        "NOT_FOUND",
                        "EXPORTABLE_POSTINGS_NOT_FOUND",
                        "TOO_MANY_REQUEST",
                        "FAILED_TO_FETCH_DOWNLOAD_URL",
                        "FILE_NOT_FOUND"
                      ]
                    },
                    "message": {
                      "type": "string",
                      "description": "Description about the issue encountered"
                    },
                    "requestId": {
                      "type": "string",
                      "description": "This is the unique identifier for the request."
                    }
                  },
                  "required": [
                    "errorCode",
                    "message"
                  ]
                }
              }
            }
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Create General Ledger Accounts",
        "tags": [
          "Core Data"
        ]
      }
    }
  },
  "info": {
    "title": "Candis API",
    "version": "1.0",
    "description": "",
    "contact": {},
    "x-logo": {
      "url": "https://www.candis.io/img/candis-logo-black.svg",
      "altText": "Candis GmbH"
    }
  },
  "servers": [
    {
      "url": "https://api.candis.io"
    },
    {
      "description": "Candis API Authorization Server.",
      "url": "https://id.my.candis.io/auth/realms/candis/protocol/openid-connect"
    }
  ],
  "components": {
    "securitySchemes": {
      "bearer": {
        "scheme": "bearer",
        "bearerFormat": "JWT",
        "type": "http"
      }
    }
  }
}
```