The SIRE periods this company has opened, newest first
ADMIN and above, which is the same floor migration 000081 gave sire:read and sire:manage, so a person role and a credential scope cannot disagree about who may close a tax period. It runs on DB_RUNTIME and not on the console connection, for the reason every company-scoped console route does: apifact_console holds SELECT on exactly two tables and cannot read sire.*, while auth.bind_console_company can prove which company this session is entitled to. The book is named rvie or rce and never the SUNAT codes 140000 and 080000. That translation lives in one module, which is where nobody gets it wrong.
ADMIN and above, which is the same floor migration 000081 gave sire:read and sire:manage, so a person role and a credential scope cannot disagree about who may close a tax period.
It runs on DB_RUNTIME and not on the console connection, for the reason every company-scoped console route does: apifact_console holds SELECT on exactly two tables and cannot read sire.*, while auth.bind_console_company can prove which company this session is entitled to.
The book is named rvie or rce and never the SUNAT codes 140000 and 080000. That translation lives in one module, which is where nobody gets it wrong.
Authorization
consoleSession Set by POST /console/v1/sessions. HttpOnly, Secure, SameSite=Strict, Path=/, __Host- prefixed. It is never readable by JavaScript and there is no header alternative: accepting both carriers would let an attacker choose the weaker one.
In: cookie
Path Parameters
uuidResponse Body
application/json
application/json
application/json
application/json
application/json
application/json
application/json
application/json
application/json
application/json
application/json
curl -X GET "https://example.com/console/v1/companies/497f6eca-6276-4993-bfeb-53cbbbba6f08/sire/periods" \ -H "Authorization: Bearer apf_v2_tu_credencial"{ "schemaVersion": "console.1", "requestId": "d385ab22-0f51-4b97-9ecd-b8ff3fd4fcb6", "periods": [ { "book": "rvie", "period": "string", "status": "string", "ticket": "string", "updatedAt": "2019-08-24T14:15:22Z" } ]}Mint a new signing secret and read it once POST POST
DEVELOPER and above. Mints a new signing secret, returns it ONCE and invalidates the previous one. Its own route, and not a flag on the update, so that changing an event list cannot silently break every receiver verifying signatures.
Open a period, which sends nothing to SUNAT POST POST
ADMIN and above. Opening a period is a row in our ledger saying somebody intends to work on this month; nothing leaves for SUNAT and nothing is committed. A company still issuing in BETA is refused by the database, by the trigger migration 000080 installs, and this route only translates that refusal. Keeping the check in the database means the second entry point cannot forget it.